当下载应用程序时,会出现以下文本的错误对话框: 应用程序安装期间出现未知错误代码:"-505"
当下载应用程序时,会出现以下文本的错误对话框: 应用程序安装期间出现未知错误代码:"-505"
我已经找到了“INSTALL_FAILED_DUPLICATE_PERMISSION”的问题所在。
如果您使用的是Android 5.0并启用了多用户,请检查“访客”帐户中是否有可能导致问题的应用,并卸载它。然后回到主用户,尝试再次安装该应用程序。对我来说有效!希望Google修复这个与多个账户相关的问题。
我也遇到了这个问题。我发布Sandbox和Production应用程序使用了不同的包名,但是却有相同的GCM权限。
我开始在AndroidManifest.xml文件中使用${packageName}
。
我从原来的:
<!-- GCM specific permissions -->
<permission
android:name="com.playgong.permission.C2D_MESSAGE"
android:protectionLevel="signature"/>
<uses-permission android:name="com.playgong.permission.C2D_MESSAGE"/>
to
<!-- GCM specific permissions -->
<permission
android:name="${packageName}.permission.C2D_MESSAGE"
android:protectionLevel="signature"/>
<uses-permission android:name="${packageName}.permission.C2D_MESSAGE"/>
并且在接收者的中:
<category android:name="com.playgong"/>
to:
<category android:name="${packageName}"/>
在我的情况下,这是因为我发布了2个基于相同库的应用程序(免费版和付费版),该库使用Google Play服务/ Google Maps。 Google Maps正在使用一个内容提供程序,要求使用您的库的应用程序正确配置才能在库内工作。
修复:
确保每个使用您的库的项目的android部分中的build.gradle
文件中定义了defaultConfig.applicationId。
android {
defaultConfig.applicationId = "com.company.appname"
}
我建议使用特定应用程序的软件包名称。通过这个修复,提供商名称将不再冲突,你的应用程序将按预期运行。
症状
1.) 用户在从 Play Store 安装您的应用时,会看到令人恐惧的“-505”安装错误。
2.) 当您尝试通过 Android Studio 安装使用您的库的第二个应用程序时,您将看到此错误消息:
3.) 在控制台中,您将看到类似于这样的消息:
Package couldn't be installed in /data/app/com.company.appname-1
com.android.server.pm.PackageManagerException:
Can't install because provider name
com.google.android.gms.measurement.google_measurement_service
(in package com.company.appname) is already used by
com.company.otherInstalledAppName
修复方法是确保在使用您的库的每个项目的build.gradle
文件的android部分中定义了defaultConfig.applicationId
android {
defaultConfig.applicationId = "com.company.appname"
}
更多阅读内容可以在原始缺陷报告中找到: 问题 784: 多个应用程序使用相同的授权提供程序名称
尝试使用adb卸载应用程序:
adb uninstall com.yourpackage
这个错误意味着在Android清单文件中存在重复的权限。不仅是一个应用程序内部,而且其他应用程序也有相同的权限。例如,在使用adb install安装应用程序时,它会显示这个-505错误的含义。因此,第一个应用程序将安装成功,但当您安装第二个应用程序时,就会出现这个错误。
失败[INSTALL_FAILED_DUPLICATE_PERMISSION perm=com.example.permission.XYZ pkg=com.example]
因此,请确保在应用商店中没有两个具有相同perm包名称的应用程序。
在同一设备上安装相同应用的多个用户可能会导致此错误。请从设备中删除其他应用程序,然后应该可以正常工作。
我遇到了类似的问题,但在我的情况下,是一个旧的开发构建停留在我的设备上,当我尝试从Play商店安装时,就会出现这个错误。