lza*_*zam 8 android jar-signing google-play
我已在Google Play商店中提交并发布了一个应用.我上传二进制文件时没有收到任何错误.现在,我收到一些(并非所有)客户的报告,说明他们在安装我们的应用程序时遇到以下错误:
"包文件未正确签名"
当我尝试自己复制此错误(使用Nexus 7重置为出厂设置)时,一切顺利.
这似乎是类似于中描述的问题这个问题,但接受的答案似乎并不在此情况下适用.
我已经看到了使用JDK 6而不是JDK 7的建议,但是像这样的答案让我相信这个解决方案适用于在旧版本的Java中创建密钥库的情况.此外,我担心如何使用旧版Java重新签名新版本会影响我们的初始安装没有问题的客户.
编辑: 所有有此问题(或没有它)的用户都在运行Android 4.0或更高版本.该应用不支持早期版本的Android.
经过一番阅读后,我将采取一个刺,你需要明确为JDK7 jarsigner指定算法..
将其添加到项目的build.xml文件中:
<presetdef name="signjar">
<signjar sigalg="MD5withRSA" digestalg="SHA1" />
</presetdef>
Run Code Online (Sandbox Code Playgroud)
经过一点阅读之后,它似乎与设备上用于摘要的默认算法有关,它似乎因设备而异,所有设备上的公共算法都是上面xml中指定的算法.这就是为什么它在某些设备上失败的原因,其他用户也经历了同样的事情,例如:"一些用户没有正确签名包"
此博客文章还包含有关apk签名的一些有趣信息:Android代码签名
我现在非常有信心明确设置用于签名的android指定算法不会影响已安装的客户,我希望它能为其他客户解决您的问题.
| 归档时间: |
|
| 查看次数: |
1871 次 |
| 最近记录: |