Android &引用;“应用程序未安装”;安装apk时的消息

Android &引用;“应用程序未安装”;安装apk时的消息,android,Android,所以我在Play Store上有一个应用程序,大约一周前我发布了这个应用程序。从那以后,我做了大量的工作,我基本上要给它重新命名一点 当我第一次发布应用程序时,我把它放在应用程序商店上,名字是“应用程序的名字”(显然不是正确的名字)。我现在有一个更新准备发布,有很多更改,其中一个更改是应用程序名称现在是“应用程序的第二个名称”。它们都在同一个包中,我只是用清单更改了名称 不过,我在测试方面遇到了一个问题。目前在我自己的手机上,我已经安装了当前在Play Store上的应用程序版本 我使用Andr

所以我在Play Store上有一个应用程序,大约一周前我发布了这个应用程序。从那以后,我做了大量的工作,我基本上要给它重新命名一点

当我第一次发布应用程序时,我把它放在应用程序商店上,名字是“应用程序的名字”(显然不是正确的名字)。我现在有一个更新准备发布,有很多更改,其中一个更改是应用程序名称现在是“应用程序的第二个名称”。它们都在同一个包中,我只是用清单更改了名称

不过,我在测试方面遇到了一个问题。目前在我自己的手机上,我已经安装了当前在Play Store上的应用程序版本

我使用Android Studio生成了一个已签名的APK(所有这些都具有相同的设置和密钥密码等)。然后,我将签名的apk放在手机上进行测试,当我尝试安装它时,会收到“应用程序未安装”的消息


我尝试过的事情:

  • 卸载以前的APK,然后安装较新版本。如果我先卸载Play Store版本,然后安装较新的已签名APK版本,则安装正常。但问题是,我丢失了Play Store版本中的数据。我不能那样
  • 更改build.gradle中的“versionCode”和“versionName”数字。我确保这两个数字都高于Play Store版本,但我仍然收到相同的“App not installed”消息
  • 确保生成签名APK时的设置相同。所有设置都完全相同。签名版本复选框也被选中,就像所有以前的版本一样


有人知道会发生什么吗?我真的很想发布此更新,但我担心如果我只是将此已签名的apk上载到应用商店,每个人都会有相同的问题,并且他们将被迫卸载当前版本(导致数据丢失).

问题似乎是您试图安装具有相同软件包名称但不同密钥的APK,这会产生冲突。Android只在包名和密钥签名相同的情况下才会认为应用程序是相同的

密钥是唯一的,即使每次创建密钥时使用相同的设置和密码,也会创建一个新的唯一密钥,并且它将始终与您在Play Store版本中使用的密钥不同

安装APK的唯一方法是卸载Play Store版本

这就强调了将密钥保存在Play Store中的重要性,如果丢失了密钥,您将无法上传新的更新

更新

如果您的应用程序激活了“Google Play App Signing”,则用户从Play Store安装应用程序时使用的密钥与您将版本上载到Play控制台时使用的密钥不同


问题似乎是您试图安装具有相同软件包名称但不同密钥的APK,这造成了冲突。Android只在包名和密钥签名相同的情况下才会认为应用程序是相同的

密钥是唯一的,即使每次创建密钥时使用相同的设置和密码,也会创建一个新的唯一密钥,并且它将始终与您在Play Store版本中使用的密钥不同

安装APK的唯一方法是卸载Play Store版本

这就强调了将密钥保存在Play Store中的重要性,如果丢失了密钥,您将无法上传新的更新

更新

如果您的应用程序激活了“Google Play App Signing”,则用户从Play Store安装应用程序时使用的密钥与您将版本上载到Play控制台时使用的密钥不同


您是否碰巧更改了SDK的最低版本或类似的内容?我也有过类似的问题。我在PlayStore上有一个应用程序,我尝试用一个APK升级,它的签名与PlayStore版本相同,但最低SDK版本不同。当我尝试安装时,出现“应用程序未安装”错误。然后我把这个APK上传到PlayStore上。在我的设备上,PlayStore上的应用程序现在显示两个选项“卸载”和“打开”。由于您的冲突,用户必须先卸载应用程序,然后重新安装。由于冲突,将没有“更新”选项。希望这有帮助:)

您是否碰巧更改了SDK的最低版本或类似的内容?我也有过类似的问题。我在PlayStore上有一个应用程序,我尝试用一个APK升级,它的签名与PlayStore版本相同,但最低SDK版本不同。当我尝试安装时,出现“应用程序未安装”错误。然后我把这个APK上传到PlayStore上。在我的设备上,PlayStore上的应用程序现在显示两个选项“卸载”和“打开”。由于您的冲突,用户必须先卸载应用程序,然后重新安装。由于冲突,将没有“更新”选项。希望这有帮助:)

您确定您从未安装过具有不同软件包结构的同一应用程序吗?通常,当你安装一个名称相同但软件包结构不同的新应用程序时,会弹出这种消息。因此,android studio试图运行adb shell卸载“current.package.name”,但未能继续。要解决此问题,您需要通过不同的软件包结构从
adb
@deatangel908对所有软件包结构运行卸载,这是否意味着应用程序内的活动不同?因为我确实在应用程序中添加了一些新活动。我手机上当前唯一的应用程序版本是Play Store上的应用程序。不,它只包含您在
manifest.xml
中指定的包结构,这样就可以了。自t