关于 Can't install because provider name xxx is used by xxx 的问题

4,744 阅读1分钟

相信很多小伙伴遇到过项目需求变更要区分不同用户群体,针对用户群体的不同对应不同的UI展示和业务,最近公司项目就是这样 需要把原来的App划分出一部分,总的来说 需要另一个终端app应对别的需求,我一想可以啊 拷贝原来的项目,拿了这个副本去修改包名,然后修改build.gradle文件中的配置,然后清理缓存,进行编译

嘴角上扬的我

然后通过命令去跑项目报错了,报错了,报错了。。。

赶紧去看报了什么错误:

立马全局搜索了报错的那个fileProvider,发现是在AndroidManifest.xml里的provider这个这个提供者的属性authorities跟原版的AndroidManifest.xml里的provider一样,authorities 是唯一标识这个 provider 的,所以立马手动修改,重新清冽缓存,进行编译,再次运行命令去run这个副本项目,还是报错了,一样的错你敢信

是我太天真,重新进行了上面的清理缓存,进行编译等操作不下4次,没用啊 每次执行命令都是报错

我一气之下,对着副本的AndroidManifest.xml里的provider的唯一标识属性就是一顿sss(一直按s键加了几个s字符),想着重新试一次,也没有还原

程序完美运行。。。