我正在通过亚马逊应用商店以及谷歌的应用商店发布应用。
亚马逊选择使用APK,然后使用自己的证书进行签名,同时也为您提供了使用您的证书签署修改过的APK的机会。
如果一个APK使用两个证书进行签名,只有一个证书可以升级(即Google Play中的升级可用于最初来自亚马逊商店的安装)会发生什么?在升级之前,包管理器是否需要来自两个证书的签名?或任何一个证书?或者其中一个证书是否优先考虑?
答案 0 :(得分:1)
我做了一些研究。
https://groups.google.com/forum/#!topic/android-security-discuss/npRHQzzgErM
Redux:截至四年前,谷歌还不知道。
http://www.escapades-in-security.com/blog/2012/12/android-apk-supersignature.html
Redux:建议一种模式,要求签名集匹配执行操作,因此可能需要双重签名升级。
还没有确定的,我开始认为亚马逊没有添加第二个签名,也不确定我从哪里获得这个想法。 (也许我是从这里得到的:digitial signature amazon app store)
答案 1 :(得分:1)
前一段时间我通过电子邮件发送了Amazon Appstore dev支持,这是他们的回答:
在这种情况下,我们会审核您的提交内容并确定是否需要 你的签名。如果我们认为确实如此,我们将启用签名 功能并发送给您指示,但如果我们认为它不是我们会 用我们自己的签名覆盖你的签名。
所以他们确实删除了你原来的签名。自从我发送电子邮件后,我现在只提交我上传到Google Play的已签名APK,并让亚马逊剥离证书并应用自己的证书。这为我节省了仅为亚马逊编译未签名APK的时间。
旁注:我认为不可能在同一设备上安装具有两个不同证书的应用/包。因此,您无法同时安装Google Play和Amazon Appstore中的应用。我可能错了。