我创建了一个apk并使用adb在我的手机上安装了本地副本,后来我在市场上保留了相同的apk。
现在,
Sreeram
答案 0 :(得分:5)
几天前,我不得不测试我公司的Play商店更新机制。我的汇总结果导致了以下条件的Play商店更新:
android:versionCode
apk需要高于设备上安装的apk。让我快速解释一下结果。首先,包名是android OS用来确定apk是否相同的值。 apk的签名密钥证明开发人员(或签名者)是相同的。如果你想知道apk有哪个版本,android:versionCode
是要检查的简单值。
最后,回答你的问题:
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 |
答案 1 :(得分:1)
我可以在设备中安装这两个应用程序吗?
没有。如果您使用相同的软件包名称,则会尝试替换现有的应用程序,前提是这两个应用程序都使用相同的密钥进行签名。
安装市场应用程序时,它会显示我更换旧的 应用
不,如果您使用相同的密钥对应用进行签名。如果您使用不同的密钥对应用程序进行签名(本地和Google Play),则无法覆盖现有应用。尝试安装时会出现“SIGNATURE MISMATCH”错误。
一个月之后,我对市场进行了更新 - 我仍然有同样的看法 我的设备中的本地apk - 我从市场获得更新吗?
您将无法接收自动更新,但如果您使用相同的密钥对应用进行了签名,则Google Play应用会识别您已拥有该应用的版本,并且您可以手动更新。
答案 2 :(得分:0)
您应该从Market重新安装,然后您将获得更新,如果您尝试从市场“更新”,您的设备将卸载您的设备并将从0下载应用程序安装。
您可以阅读西班牙语博客......也许您可以翻译它。 Auto-Update-OutMarket APP