安装新版本时,获取“未安装Android应用程序。该软件包与同名的现有软件包冲突”

时间:2019-01-02 09:36:26

标签: android gradle google-play

我正在尝试通过手机上存在的文件管理器安装我的应用程序的新的签名发行版,但我收到此错误消息“未安装APP程序,该程序包与现有程序包存在相同的冲突名称” 。我已经从Google Play商店安装了以前的版本,两个APK均来自同一密钥库。

最新版本的应用程序构建配置

compileSdkVersion 25
buildToolsVersion "25.0.3"
defaultConfig {
    applicationId "com.xxx.xxx"
    minSdkVersion 16
    targetSdkVersion 22
    versionCode 19
    versionName "1.1.9"
    testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}

新版本的应用构建配置

compileSdkVersion 27
defaultConfig {
    applicationId "com.xxx.xxx"
    minSdkVersion 16
    targetSdkVersion 27
    versionCode 20
    versionName "1.2.0"
    testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}

我知道在卸载以前的版本后,我将能够安装该应用程序的新版本,但是我的应用程序的用户将能够在不从Play商店中卸载先前版本的情况下更新该应用程序吗?如果没有,我该如何避免这种情况?


更新

在Play商店中有apk的两个副本。1.原始的一个(您上传的apk)2.衍生的一个(通过修改您的apk创建的Google播放的apk,并且该apk分发给了所有人)。

您可以从此处下载两个APK

Google Play控制台-> Artifact Library->点击“下载”按钮->现在,Google Play会询问您要下载哪个apk。

因此,如果您尝试使用从android studio创建的带有签名的发行版更新从Play商店下载的应用,则可能会收到此错误。但是,如果您将发行的带有签名的APK下载到Play商店,您的用户将能够来更新应用程序而没有任何错误。

如果要测试事物数据库迁移,则可以使用原始apk。

1 个答案:

答案 0 :(得分:3)

您是否检查过完全删除了开发版本?我以前遇到过这种情况,这就是原因。如果有可用内存,则需要完全卸载应用程序,重新启动设备,然后从商店安装并安装生产版本。甚至可能是我以不同的名称进行了测试构建,但是在进行一些建议的主要UI更改时,使用了相同的applicationId(我复制了项目,但只重命名了一些东西)。

相关问题