Android 签名时 v2 与 v1 的选择
2017-07-06 13:00
417 查看
注:对于 v2 与 v1 的对比不在此文讨论范围
结论:
一定可行的方案: 只使用 v1 方案
不一定可行的方案:同时使用 v1 和 v2 方案
对 7.0 以下一定不行的方案:只使用 v2 方案
签名打包时签名版本(Signature Versions)的选择
参考链接:https://source.android.com/security/apksigning/v2#verification
在 Android 7.0 以上版本的设备上,APK 可以根据Full Apk Signature(v2 方案) 或者 JAR-signed( v1方案)进行验证;
而对于7.0以下版本的设备其会忽略 v2 版本的签名,只验证 v1 签名
如图所示:
安装失败时提示:
安装成功时提示:
结论:
一定可行的方案: 只使用 v1 方案
不一定可行的方案:同时使用 v1 和 v2 方案
对 7.0 以下一定不行的方案:只使用 v2 方案
PS: 如果要支持 Android 7.0 以下版本,那么尽量同时选择两种签 名方式,但是一旦遇到签名问题,可以只使用 v1 签名方案
签名打包时签名版本(Signature Versions)的选择
参考链接:https://source.android.com/security/apksigning/v2#verification
在 Android 7.0 以上版本的设备上,APK 可以根据Full Apk Signature(v2 方案) 或者 JAR-signed( v1方案)进行验证;
而对于7.0以下版本的设备其会忽略 v2 版本的签名,只验证 v1 签名
如图所示:
真机测试: 三个包 1、only_v2: 只使用 v2 方案进行签名 预计只能安装在 7.0 以上设备;7.0 以下设备会显示签名失败 2、only_jar_sigh: 只使用 jar_sigh(即 v2 方案)进行签名 预计能安装在所有设备上 3、both_jar_and_v22: 同时使用 v1 和 v2 两种签名方式 预计一般能正常安装在普通手机上,某些设备可能无法正常安装 三台设备: Nexus 5X: Android 版本:8.0.0 Le X820:乐视手机 Android 版本:6.0.1 红米1: Android 版本:4.4.2 安装测试: 1、分别将 1、2、3 包安装到 Nexus 5X 上,都能正常安装与启动 2、将1 包尝试安装到 Le X820 上,安装不成功;2、3 安装成功 3、将1 包尝试安装到红米1上,安装不成功;2、3 安装成功
安装失败时提示:
安装成功时提示:
相关文章推荐
- 关于Android签名打包应用不能选择v1和v2签名的问题
- Android 签名时 v2 与 v1 的选择
- 浅谈:android签名打包v1和v2的区别
- android studio version 2.3.3 打包签名V1和V2的问题
- Android开发之签名V1和V2的区别
- Android开发之签名V1和V2的区别
- Android Studio 打包时 Signature Version 选择 V1 V2 说明
- Android Studio打包签名 Signature Versions V1、V2的选择问题
- 用Android Studio签名打包signature versions v1 v2
- android手动 v2 签名
- androidd studio 打包签名 V1&V2
- Android Studio 打包时 Signature Version 选择 V1 V2 说明
- Android V2签名,如何修复[INSTALL_PARSE_FAILED_NO_CERTIFICATES]
- 开发人员应该选择什么Android手机?
- 为什么选择Android平台来研发手机
- Android中的签名机制
- 无法对jar进行签名,Android jarsigner问题
- android 对于apk签名汇总
- Android: 如何创建AVD以及选择合适target类型
- Android签名用keytool和jarsigner制作apk文件