以前测试要不同环境的包时,总是手动去改constants文件里的服务器环境,免不了打错包,特别是赶迭代的时候。所以如果能利用gradle配置,自动打包成不同环境就可以很好地避免打错包了。直接贴代码了。
在项目module下的build.gralde里进行修改,android 下的 defaultConfig,通过buildConfigField 自定义一个变量,如:
![](https://img.haomeiwen.com/i2552343/8d64436f61df927b.png)
接下来就简单了,然后在buildTypes里对各渠道进行配置定义的值,
![](https://img.haomeiwen.com/i2552343/042e6538f4017c43.png)
![](https://img.haomeiwen.com/i2552343/b14c2c7fee9eb904.png)
最后一步就是在你的服务器配置类里,根据定义的值进行对应赋值即可。
![](https://img.haomeiwen.com/i2552343/f92593fb184dc897.png)
通过这几步配置后,以后打包就不需要手动更改服务器环境了。
同时,可能还有根据不同环境的包去更换各种第三方appid 或者 key,这时就可以通过替换符来操作。直接上图了
![](https://img.haomeiwen.com/i2552343/496bb5e0210bd610.png)
![](https://img.haomeiwen.com/i2552343/71998a3edfe952e3.png)
按照上面两步走就可以了,不过注意的是如果有多个替换符,即manifestPlaceholders用到多个,那在defaultConfig里进行默认赋值时,需要用数组方式填写,如图
![](https://img.haomeiwen.com/i2552343/1cab0bdedd833130.png)
网友评论