繁体   English   中英

使用adb安装的apk会从playstore接收更新吗?

[英]Apk installed using adb , will receive updates from playstore?

我创建了一个apk并使用adb在我的手机上安装了本地副本,后来我将相同的apk保留在市场上。

现在,

  1. 我可以在设备中同时安装两个应用程序吗?
  2. 安装Market应用程序时,它会显示我替换您的旧应用程序吗?
  3. 一个月后,我将更新发布到市场上-我的设备中仍然有相同的本地apk-我可以从市场获取更新吗?

斯瑞兰

几天前,我不得不测试公司的Play商店更新机制。 我的汇总结果导致Play商店更新需要满足以下条件:

  • 两个应用程序的程序包名称必须相同。
  • 为了能够更新apk(与更新源无关),两个apk的签名都必须匹配。
  • 市场apk的android:versionCode必须高于设备上安装的apk之一。

让我快速解释一下结果。 首先,包名称是android操作系统用来确定apk是否相同的值。 apk的签名密钥证明开发者(或签名者)是相同的。 android:versionCode是要检查apk具有哪个版本的简单值。

最后,回答您的问题:

1)仅使用不同的软件包名称。

2)仅具有相同的包装名称和签名。 如果商店android:versionCode高于安装的商店,商店将提供更新apk的服务。

现在有趣的部分是:

3)是的,您确实有更新! 这与前面描述的行为相同。


编辑:这是我原始结果数据的图表:

|Old source|Old version|New source|New version|Reinstall result|Store update available?|
|----------|-----------|----------|-----------|----------------|-----------------------|
|Store     |10         |Device    |5          |fail            |---                    |
|Store     |10         |Device    |10         |success         |no                     |
|Store     |10         |Device    |15         |success         |no                     |
|Device    |5          |Store     |10         |success         |yes                    |
|Device    |10         |Store     |10         |not possible    |no                     |
|Device    |15         |Store     |10         |not possible    |no                     |

我可以在设备中安装两个应用程序吗?

不能。如果您使用相同的程序包名称,并且两个应用程序都使用相同的密钥签名,它将尝试替换现有的应用程序。

安装Market应用程序时,它会显示我替换您的旧应用程序吗?

否,如果您使用相同的密钥对应用程序进行签名。 如果您使用其他密钥对应用程序进行了签名(本地和Google Play),则将无法覆盖现有应用程序。 尝试安装时,它将引发“ SIGNATURE MISMATCH”错误。

一个月后,我将更新发布到市场上-我的设备中仍然有相同的本地apk-我可以从市场获取更新吗?

您将无法接收自动更新,但是如果您使用相同的密钥对应用程序进行了签名,则Google Play应用程序将识别出您已经拥有该应用程序的版本,并且可以手动进行更新。

您应该从Market重新安装,然后您将获得更新,如果您尝试从Market“更新”,则设备将卸载您的设备并从0开始安装所下载的应用程序。

您可以阅读西班牙博客...也许您可以翻译它。 自动更新-OutMarket APP

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM