我创建了一个 apk 并使用 adb 在我的手机上安装了本地副本,后来我在市场上保留了相同的 apk。
现在,
- 我可以在设备中安装这两个应用程序吗?
- 安装市场应用程序时,它会显示我替换您的旧应用程序吗?
- 一个月后,我将更新发布到市场 - 我的设备中仍然有相同的本地 apk - 我是否从市场获得更新?
斯里拉姆
我创建了一个 apk 并使用 adb 在我的手机上安装了本地副本,后来我在市场上保留了相同的 apk。
现在,
斯里拉姆
几天前,我不得不为我的公司测试 Play 商店更新机制。我总结的结果导致 Play 商店更新的以下条件:
android:versionCode
apk 需要高于设备上安装的 apk 之一。让我快速解释一下结果。首先,包名是安卓操作系统用来判断一个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 |
我可以在设备中安装这两个应用程序吗?
否。如果您有相同的包名称,它将尝试替换现有的应用程序,前提是两个应用程序都使用相同的密钥签名。
安装市场应用程序时,它会显示我替换您的旧应用程序吗?
不,如果您使用相同的密钥签署您的应用程序。如果您使用不同的密钥来签署您的应用程序(本地和 Google Play),您将无法覆盖现有应用程序。当您尝试安装时,它会抛出“SIGNATURE MISMATCH”错误。
一个月后,我将更新发布到市场 - 我的设备中仍然有相同的本地 apk - 我是否从市场获得更新?
您将无法接收自动更新,但如果您使用相同的密钥签署了应用程序,Google Play 应用程序将识别您已经拥有该应用程序的一个版本,您可以手动更新它。
您应该从市场重新安装,然后您将获得更新,如果您尝试从市场“更新”,您的设备将卸载您的设备并从 0 安装下载的应用程序。
您可以阅读西班牙博客...也许您可以翻译它。自动更新-OutMarket APP