Android 在同一台设备上安装多个同一项目的apk

如果设备上已经安装了一个apk,再次安装这个apk就会提示覆盖前面的应用

解决办法:

方法一:手动改包名

不好改,改了几次都不成功(可能是代码在svn管理的原因,改完后文件夹里的代码就没了),确实不实用。

方法二:buildTypes方式:

在app下面的bulid.gradle中添加如下代码:

 

方法三、flavors方式:

在app下面的bulid.gradle中添加如下代码:

 

方法四:${applicationId}

使用前3种方法如果还是提示删除原来的安装包,查看manifest.xml中是否使用了provider。

 

Provider在声明android:authorities(该值必须唯一)时,如前缀为写死的包名字符串,当出现需要同一工程分包、分渠道打包时,安装在同一android设备将导致 INSTALL FAILED CONFLICTING PROVIDER 的报错,这时可以使用${applicationId},这将避免android:authorities值非唯一的问题。

原文地址:https://www.cnblogs.com/weijuanran/p/11938000.html