时间:2021-05-02
Android独有的安全机制,除了权限机制外,另外一个就是签名机制了。签名机制主要用在以下两个主要场合起到其作用:升级App和权限检查。
升级App
用户在升级一款已经安装过的App时,如果程序的修改来自于同一来源,则允许升级安装,否则会提示签名不一致无法安装的提示。
权限检查
我曾在Android Permission权限机制的具体使用一文中提过,对于申请权限的 protection level 为 signature 或者 signatureOrSystem 的,会检查权限申请者和权限声明者的证书是否是一致的。
至于签名机制的原理及其他作用,此不详述,本文主要介绍,签名文件key的生成、用key去签名apk文件及查看签名的方法。
生成keystore
创建keystore,需要用到keytool.exe (位于jdk_xx\jre\bin目录下),具体做法如下:
复制代码 代码如下:对apk进行签名
使用产生的keystore对apk签名,使用到的是jarsigner.exe ,该工具位于jdk_xx\bin目录下,命令如下:
复制代码 代码如下:
另外需要注意的是,如果你的jdk版本在1.7以上,你在对apk签名时,需要加上这个参数:
否则同样会出现:Failure [INSTALL_PARSE_FAILED_NO_CERTIFICATES]的错误。
查看签名信息
1、查看keystore的信息
复制代码 代码如下:
2、查看keystore的公钥证书信息
(注:获取Base64格式的公钥证书,RFC 1421)
3、查看apk的签名信息
复制代码 代码如下:声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
对已有的apk文件进行重新打包,前面Android签名机制:生成keystore、签名、查看签名信息已经介绍了。本文介绍另外两种需求。使用默认的Debug签名打
android给未签名的apk签名命令。准备文件1、unsign.apk(未签名的apk)2、shanhy.keystore(签名证书文件)命令语法:jarsi
Android签名工具常用的android的签名工具有:jarsigner和apksigner。jarsigner使用keystore文件,apksigner使
本文介绍了Android多渠道打包的方法步骤,分享给大家,具体如下:1.生成签名文件点击Build->GenerateSignedAPK:2.创建一个签名红色填
签名打包的两种方式:注:给我们自己开发的app签名,就代表着我自己的版权,以后要进行升级,也必须要使用相同的签名才行。签名就代表着自己的身份(即keystore