运行之后,AS会自动生成@string/app_name,内容是这样的
<item type="string" name="app_name">demo</item>
- 1
那么问题来了,如果你在app的strings.xml文件也定义了
<string name="app_name">demo</string>
- 1
编译的时候就会出现问题,因为有2个app_name,所以我们要把app的strings.xml去掉,编译就会正常了。
再注意啦,我们只能在app的build.gradle文件配置各个版本的值,如
app1 { buildConfigField "int", "TYPE", "1" } app2 { buildConfigField "int", "TYPE", "2" }
-
1
-
2
-
3
-
4
-
5
-
6
如果你在其他子模块配置的话,编译时出现乱七八糟的错误!!
如果子模块需要配置的值,可以在公共模块定义静态变量,在app模块取出配置值后,设置到公共模块定义的静态变量中,这样的话各个模块都可以取到!!