Android 自动升级故障之血泪排查
背景
我们的创业项目,好不容易接到了一个单,要在合作厂商的安卓平板上安装一批我们研发的APP,首批已经安装成功,由于这是定制产品,所以我们没有自己的应用市场,采用APK包方式安装。
如果我们app做了更新,会推送到平板,平板电机下载按钮自动安装。
此前我们是自己的产品,是B2C模式,打包是 release。现在是客户定制版本,是 B2B2C,需要很多条件编译,例如区分来自那个合作厂商,因为后面涉及到的盈利分成。
解决方案
我们的解决方案就是,增加构建类型 buildTypes,然后通过下面三种方式给APP传递参数
manifestPlaceholders.put("app_name", "netkiller")
buildConfigField("String", "apiUrl", "\"https://api.netkiller.cn\"")
resValue("string", "baseUrl", "https://api.netkiller.cn")
这样编译之后,每个合作厂商都会有专属定制的内容。我们只需要为每个合作厂商提供对应