【问题标题】:Android: updating apk from outside Google Play with greater versionCodeAndroid:使用更高版本代码从 Google Play 外部更新 apk
【发布时间】:2016-01-18 14:49:28
【问题描述】:

Android 文档说,在将新版本上传到开发者控制台时,新 apk 上的 versionCode 参数大于旧 apk 参数很重要,但它还说如果我没有在系统上真正强制执行 versionCode错了。

这里:http://developer.android.com/tools/publishing/versioning.html

这是否意味着我可以在网站上分发较新的 apk 文件(不是 beta 版本),而 Google Play 上的更新频率较低(由我选择)而没有任何问题?

【问题讨论】:

    标签: android google-play apk versioning android-install-apk


    【解决方案1】:

    除非新版本代码大于或等于现有版本代码,否则设备不会让您安装与现有应用程序包名称相同的应用程序。

    所以是的,您可以在您的设备和 Play 商店中安装版本 1,然后分发版本代码为 1、2、3、4 的较新的 apk。那么通过控制台上传的下一个apk必须是5才能让code为4的设备安装。

    【讨论】:

    • 因此,如果我在第 5 版已经分发到许多设备时将第 2 版上传到 Google Play 控制台,那么这些设备上不会发生任何事情,对吧?那些仍然有版本 1 的人会发生一些事情,对吗?
    • 它肯定不会用版本2替换版本5。它可能会要求他们更新然后安装失败。
    • 那么,当用户被打扰时可能会发生一些误解?不检查当前安装的版本吗?
    • 可能。我认为是这样,但这完全取决于 Google Play 应用程序如何决定工作。我猜是的,但我不是 100% 确定。
    【解决方案2】:

    正如您所说,您有两个 apk。 假设我们有

    • A.apk (versionCode = 40) - 从 Google Play 下载。安装在用户设备上。
    • A.apk (versionCode = 41) - 位于您的网站上。

    在这种情况下,您可以向您的客户发送链接以更新您的应用程序。如您所知Google Play 浪费一些时间来检查您的应用程序,所以 如果您在GooglePlay 中推送 41 版本,您将有下一个场景:

    • 用户的应用程序版本代码 = 40。
    • 您发送更新通知/链接
    • 您将 41 版本推送到 Google Play 中
    • 用户下载41版本并安装。
    • 在 Google 检查您的应用后,您没有收到任何更新消息。

    所以,回滚到你的答案

    - 这是否意味着我可以分发更新的 apk 文件(不是 beta 版本),让我们 例如,在网站上,而在 Google Play 上的更新频率较低 没有任何问题? - 是的。

    【讨论】:

    • 我编辑了我的问题:该应用程序在 Google Play 上的更新频率会降低,因为我决定这样做,我不担心 Google 更新会缓慢地到达设备。我网站上的 apk 的 versionCode 可能比 Google Play 上的大很多。
    • @P5music 与您的新版本更大的单位无关。您的应用将通过表达式oldVersionCode<newVersionCode 进行更新。所以你不需要关心这个。
    • 所以用户不会被打扰,比方说,当我在设备上安装版本 5 的同时将 Google Play apk 更新到版本 2 时?如果您在其他答案中阅读 cmets,这是一个问题,即:Google Play 可能想要更新应用程序,因为它正在“等待”“新”版本来更新发生最后一次官方更新的设备。安装会失败,但用户会感到困扰和困惑。你有过这样的经历吗?
    • @P5music 不完全正确。如果您将应用更新到 2 版本,用户将无法更新应用,因为 Android 不提供向后兼容性。更新过程将失败。您只能更新到更高版本(到 6),在这种情况下您不会遇到任何问题。
    • @P5music Android 检查当前安装的版本并检查传入。如果传入版本低于当前版本 -> 更新将失败。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-11-12
    • 2019-06-06
    • 1970-01-01
    • 1970-01-01
    • 2020-04-05
    • 1970-01-01
    • 2012-11-25
    相关资源
    最近更新 更多