我想知道是否在技术上是可行的,而不是它是否容易,改变一个 Android 应用程序的实际软件包名称是在谷歌播放。我所说的包名是指将显示在 URL 中的名称。有人能告诉我为什么这不可能吗? 谢谢!
如果你指的是 com.example.app,不,我理解你不能,这将被视为一个新的应用程序
来自戴安 · 哈克伯恩:
无法改变的事情: 其中最明显和可见的是“清单包名称”,这是在 AndroidManifest.xml 中为应用程序赋予的唯一名称。该名称使用 Java 语言风格的变数命名原则,互联网域所有权有助于避免名称冲突。例如,由于 Google 拥有域名“ Google.com”,所以我们所有应用程序的清单包名称都应该以“ com.Google”开头为了避免与其他开发人员发生冲突,开发人员遵循此约定非常重要。 一旦您以清单包名称发布应用程序,这将永远是应用程序的唯一标识。切换到不同的名称会导致一个全新的应用程序,这个应用程序不能作为现有应用程序的更新安装。
无法改变的事情:
其中最明显和可见的是“清单包名称”,这是在 AndroidManifest.xml 中为应用程序赋予的唯一名称。该名称使用 Java 语言风格的变数命名原则,互联网域所有权有助于避免名称冲突。例如,由于 Google 拥有域名“ Google.com”,所以我们所有应用程序的清单包名称都应该以“ com.Google”开头为了避免与其他开发人员发生冲突,开发人员遵循此约定非常重要。
一旦您以清单包名称发布应用程序,这将永远是应用程序的唯一标识。切换到不同的名称会导致一个全新的应用程序,这个应用程序不能作为现有应用程序的更新安装。
更多关于你不能改变 给你的事情
关于你的问题的 URL 从谷歌播放,包定义了有链接到应用程序的完全限定包,你有在你的 AndroidManifest.xml文件。更多关于 GooglePlay 的链接格式 给你。
不,你不能只是改变它,你必须上传一个新的软件包作为一个新的应用程序。看看谷歌的应用程序 Talk,它的名字被改为 Hangouts,但软件包的名字仍然是 com.google.android.talk。因为这是不可行的:)干杯。
Talk
Hangouts
com.google.android.talk
据我所知,你可以做的是“退役”你以前的应用程序,并重定向到你的新应用程序的所有用户。Google 不支持这个过程,但是它可以通过四个步骤来实现:
更改当前应用程序以向用户显示关于升级的消息,并将他们重定向到新的应用程序列表。 也许一条全屏信息需要一些友好的短信。理想情况下,可以远程触发此消息,但也可以使用截止日期。(但是这对你来说是一个艰难的期限,所以要小心... ...)
发布修改过的旧应用作为升级,可能还有一些功能升级/bug 修复,以“增加交易”给用户。尽管不能保证所有用户都会升级,但大多数用户都会升级。
使用更新后的软件包名称准备新的应用程序,并将其上传到商店,然后在旧的应用程序中触发消息(或者只是等到它过期,如果这是你的选择)。
在 Play Store 中取消发布旧的应用程序,以避免任何新的安装。取消发布应用程序并不意味着已经安装了应用程序的用户不能再访问它,但至少潜在的新用户不会在市场上找到它。
并不理想,而且可能会让用户感到厌烦,有时甚至因为应用程序的状态/可能性而无法实现。但由于谷歌让我们别无选择,这是将旧应用程序的用户迁移到“新”应用程序的唯一方法(即使它并不是真正的新应用程序)。 更不用说,如果你没有访问源代码和旧应用程序的代码签名细节,那么你所能做的就是希望他的用户会注意到新的应用程序..。
如果有人想出了一个更好的办法,请告诉我。
不,你不能更改软件包的名称,除非你同意将它作为一个新的应用程序发布在 Play Store 中:
一旦您以清单包名称发布应用程序,这将永远是应用程序的唯一标识。切换到不同的名称会导致一个全新的应用程序,这个应用程序不能作为现有应用程序的更新安装。 Android 手册在这里也证实了这一点:
注意: 发布应用程序后,不能更改包名称。包名定义了应用程序的标识,因此如果您更改了它,那么它将被认为是一个不同的应用程序,并且以前版本的用户无法更新到新版本。 如果你同意发布新版本的应用作为一个全新的实体,你当然可以这样做-只是删除旧的应用从播放商店(如果你想)和发布新的一个,用不同的软件包名称。
从来没有,你不能这样做,因为包名称是你的应用程序的唯一名称标识符... ..。
完整指南: Https://developer.android.com/studio/build/application-id.html
根据 Android 官方博客: Https://android-developers.googleblog.com/2011/06/things-that-cannot-change.html
我们可以说:
如果清单包名称已更改,则新应用程序将为 安装在旧应用程序旁边,因此它们在 用户的设备,同时。
如果签名证书更改,则尝试安装新的 应用程序上的设备将失败,直到旧版本 卸载。
根据谷歌应用程序更新检查列表: Https://support.google.com/googleplay/android-developer/answer/113476?hl=en
更新你的应用程序
准备 APK
当您准备对 APK 进行更改时,请确保同时更新应用程序的版本代码,以便现有用户能够接收到您的更新。
使用以下检查表确保您的新 APK 已准备好更新您的现有用户:
要验证您的 APK 是否使用与前一版本相同的认证,您可以在两个 APK 上运行以下命令并比较结果:
$ jarsigner -verify -verbose -certs my_application.apk
如果结果相同,则使用相同的键并准备继续。如果结果不同,则需要使用正确的键重新签署 APK。
了解有关签署应用程序的更多信息
上传你的 APK 一旦您的 APK 准备好了,您就可以创建一个新版本。