任何人都可以告诉我如何在一台设备上安装不同版本的不同版本,而不会在PlayStore或AndroidStudio中收到“重复提供者”错误消息?如何以编程方式阻止“冲突的提供者”消息
我在我的应用程序中针对不同国家有不同的风味,并且在安装其他应用程序之前总是卸载应用程序令人讨厌。
我想:
productFlavors {
austria {
manifestPlaceholders = [
// prevent "duplicate provider authority" message
providerAuthority: "com.example.app.at",
]
}
germany {
manifestPlaceholders = [
// prevent "duplicate provider authority" message
providerAuthority: "com.example.app.de",
]
}
//...
}
,并在我的AndroidManifest我说:
android:authorities="${providerAuthority}"
我
<application/>
标签。 这并不能解决我的问题。
我不使用ContentProvider的,所以我也尝试添加一个存根ContentProvider类的项目,并宣布机器人:当局=“$ {} providerAuthority”的
<provider/>
标签包括的名字里面存根内容提供者 - >没有成功。 我会很高兴的一些其他的想法或更正。
UPDATE:
错误消息试图在我的设备上安装应用程序时,我从Android Studio中获得。
“我不使用的ContentProvider” - 那么具体是什么给你这个例外? “并在我的AndroidManifest中添加了” - 如果您不使用“ContentProvider”,那么您在哪里添加了此属性?您可能会考虑发布安装例外的整个堆栈跟踪,这应该显示在LogCat中。 – CommonsWare
android:应该将权限添加到您的提供者标记中,请清除您的问题并发布您的manifest.xm的相关部分 – cyroxis