If the manifest package name has changed, the new application will be installed alongside the old application, so they both co-exist on the user’s device at the same time.
If the signing certificate changes, trying to install the new application on to the device will fail until the old version is uninstalled.
7 回答
来自Dianne Hackborn:
更多关于你无法改变的事情here
关于您对来自Google Play的网址的问题,其中定义的软件包链接到您在AndroidManifest.xml文件中的应用程序的完全限定软件包 . 更多关于Google Play的链接格式here .
不,你不能只是改变它,你必须上传一个新的包作为一个新的应用程序 . 看看谷歌的应用程序
Talk
,其名称已更改为Hangouts
,但程序包名称仍为com.google.android.talk
. 因为它不可行:)干杯 .据我所知,你可以做的是“退休”你以前的应用程序并将所有用户重定向到你的新应用程序 . Google不支持此过程(tsk ... tsk ...),但可以通过四个步骤实现:
更改当前应用程序以向用户显示有关升级的消息,并将其重定向到新的应用程序列表 . 一些友好的文字可能会显示全屏消息 . 理想情况下可以远程触发此消息,但也可以使用截止日期 . (但那对你来说这将是一个艰难的截止日期,所以要小心......;))
将修改后的旧应用程序作为升级版本发布,可能还会进行一些功能升级/错误修复,以便为用户“增加交易” . 仍然无法保证所有用户都会升级,但大多数用户可能会升级 .
使用更新的软件包名称准备新应用程序并将其上传到商店,然后在旧应用程序中触发消息(或者等到它过期,如果这是您的选择) .
取消发布Play商店中的旧应用以避免任何新安装 . 取消发布应用程序并不意味着已经安装应用程序的用户将无法再访问它,但至少潜在的新用户将无法在市场上找到它 .
由于应用程序的状态/可能性,不理想并且可能令用户烦恼,有时甚至无法实现 . 但是,由于谷歌让我们别无选择,这是将旧应用程序的用户迁移到“新”应用程序的唯一方法(即使它不是新的) . 更不用说如果您无法访问旧应用程序的源代码和代码签名详细信息,那么您所能做的就是希望用户会注意到新应用程序...
如果有人通过各种方式找到更好的方法:请告诉我们 .
不,您不能更改包名称,除非您可以将其作为Play商店中的新应用程序发布:
一旦在其清单包名称下发布应用程序,这就是应用程序的唯一标识 . 切换到其他名称会生成一个全新的应用程序,无法将其安装为现有应用程序的更新 . Android手册也证实了这一点:
警告:发布应用程序后,无法更改包名称 . 程序包名称定义了应用程序的标识,因此如果更改它,则会将其视为不同的应用程序,而以前版本的用户无法更新到新版本 . 如果你可以将你的应用程序的新版本发布为一个全新的实体,那么你当然可以这样做 - 只需从Play商店中删除旧的应用程序(如果你愿意)并发布一个具有不同包名称的新应用程序 .
如果您指的是com.example.app,我不明白您不能将它视为一个新的应用程序
从来没有,你不能这样做,因为包名是你的应用程序的唯一名称标识符.....
Complete guide : https://developer.android.com/studio/build/application-id.html
根据Android官方博客:https://android-developers.googleblog.com/2011/06/things-that-cannot-change.html
我们可以说:
If the manifest package name has changed, the new application will be installed alongside the old application, so they both co-exist on the user’s device at the same time.
If the signing certificate changes, trying to install the new application on to the device will fail until the old version is uninstalled.
根据Google App Update检查清单:https://support.google.com/googleplay/android-developer/answer/113476?hl=en
Update your apps
Prepare your APK
当您准备好对APK进行更改时,请务必更新应用的版本代码,以便现有用户能够收到您的更新 .
使用以下核对清单确保您的新APK已准备好更新现有用户:
更新的APK的包名称必须与当前版本相同 .
版本代码需要大于当前版本 . 详细了解应用程序的版本控制 .
更新后的APK需要使用与当前版本相同的签名进行签名 .
要验证您的APK是否使用与先前版本相同的认证,您可以在两个APK上运行以下命令并比较结果:
如果结果相同,则您使用相同的密钥并准备好继续 . 如果结果不同,您需要使用正确的密钥重新签名APK .
详细了解如何签署您的应用程序
Upload your APK APK准备就绪后,您可以创建新版本 .