【签名】4.2.2系统不能安装引出的签名问题
2015-12-09 16:51
267 查看
1、前两个星期应用拿去内测,出现了4.2.2系统不能安装的问题,提示错误是”程序包解析失败”
以为minSDK没有设置正确,检查了一下,API level = 14,没问题啊,理论上4.0以上系统都能安装
无头绪
2、仔细想了想发布过程,先用AndroidStudio自带的工具签名,然后放到娜迦去加固,然后下载,然后重签名,没毛病
3、还有一个现象是,用AndroidStudio自带签名后不加固,就能安装加固了再签名就不能安装
4、第一反应是加固平台的问题,于是换了腾讯的加固平台和爱加密加固平台,还是一样的结果,4.2或以下的系统不能安装
5、那想必是签名出现了问题,一番百度后,有答案了
jdk1.6 和 jdk1.7 的签名机制有些不一样,具体是什么情况也没搞明白,麻痹的官网上全是英文看不懂
6、总之用 jdk1.7 的jarsigner签名工具,要在签名命令后面加上如下命令
该命令在 jdk1.6 下无影响
续:
7、网上有人深究了这个问题,是这样
jdk6 用的是SHA1摘要算法,而 jdk7 用的是SHA256,我就醉了…
所以指定 SHA1 算法来签名
以为minSDK没有设置正确,检查了一下,API level = 14,没问题啊,理论上4.0以上系统都能安装
无头绪
2、仔细想了想发布过程,先用AndroidStudio自带的工具签名,然后放到娜迦去加固,然后下载,然后重签名,没毛病
3、还有一个现象是,用AndroidStudio自带签名后不加固,就能安装加固了再签名就不能安装
4、第一反应是加固平台的问题,于是换了腾讯的加固平台和爱加密加固平台,还是一样的结果,4.2或以下的系统不能安装
5、那想必是签名出现了问题,一番百度后,有答案了
jdk1.6 和 jdk1.7 的签名机制有些不一样,具体是什么情况也没搞明白,麻痹的官网上全是英文看不懂
6、总之用 jdk1.7 的jarsigner签名工具,要在签名命令后面加上如下命令
-digestalg SHA1 -sigalg MD5withRSA
该命令在 jdk1.6 下无影响
续:
7、网上有人深究了这个问题,是这样
jdk6 用的是SHA1摘要算法,而 jdk7 用的是SHA256,我就醉了…
所以指定 SHA1 算法来签名
相关文章推荐
- 使用C++实现JNI接口需要注意的事项
- Android IPC进程间通讯机制
- Android Manifest 用法
- [转载]Activity中ConfigChanges属性的用法
- Android之获取手机上的图片和视频缩略图thumbnails
- Android之使用Http协议实现文件上传功能
- Android学习笔记(二九):嵌入浏览器
- android string.xml文件中的整型和string型代替
- i-jetty环境搭配与编译
- android之定时器AlarmManager
- android wifi 无线调试
- Android Native 绘图方法
- Android java 与 javascript互访(相互调用)的方法例子
- android 代码实现控件之间的间距
- android FragmentPagerAdapter的“标准”配置
- Android"解决"onTouch和onClick的冲突问题
- android:installLocation简析
- android searchView的关闭事件
- SourceProvider.getJniDirectories