AS安装APK失败的两种情况
Posted BennuCTech
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了AS安装APK失败的两种情况相关的知识,希望对你有一定的参考价值。
INSTALL_FAILED_DUPLICATE_PERMISSION
根据网上的结论,在android L即android 5.0之后添加一种机制,主要是针对自定义权限的:
不同签名的app种如果有同样的自定义权限,那么只能安装一个,安装第二个时就会报上面的错误。
经过测试,即使签名相同也不行,不知道是我操作的问题,还是android更高版本有了更严的机制。
总之,使用不同的自定义权限就没问题,一般自定义权限我们都会加入applicationid,即包名,这样就不会冲突
INSTALL_FAILED_CONFLICTING_PROVIDER
与上面的类似,在不同的app种有相同authorities的Provider。
官方解释
查看官方文档(docs/guide/topics/manifest/provider-element.html)的描述:
The Android system stores references to content providers according to an authority string, part of the provider’s content URI.
Android 系统根据 authority 字符串来储存 ContentProvider 的引用,并且 authority 还是 contentURI 的一部分。从这句话可以得出,在 Android 中 authority 必须是唯一的,不然 Android 系统如何区分开不同应用的 ContentProvider 呢?
所以解决方法一样,为provider定义authorities时可以加入applicationid,即包名,这样就会不同了。
另外注意:当修改了authorities,代码中也要进行对应的修改
关注公众号:BennuCTech,获取更多干货!
以上是关于AS安装APK失败的两种情况的主要内容,如果未能解决你的问题,请参考以下文章