前言
Android应用必须进行
数字签名
才可以发布,也就是我们平时所说的使用证书打包然后上传市场,其中数字证书的私钥由应用开发者持有。
生成签名的方式有很多种,今天我们来讲如何通过AS创建签名流程。
一、创建keystore签名文件
在菜单栏中,依次点击 Build - Generate Signed Bundle/Apk...(生成签名)
选择 APK 选项,点击按钮 Next 到下一步
新建key store秘钥文件,点击按钮 Next 到下一步
按如下提示填写信息,点击按钮 Next 到下一步
签名生成完成,勾选记住密码,方便下次打包
勾选签名效验方式,选择要打包的环境,点击按钮 Next 开始打包
见到如下提示,说明打包成功
二、获取签名文件的配置信息
终端执行如下命令:
keytool -list -v -keystore 你的keystore文件的绝对路径
输入 keystore 的密码后,就可以在终端上看到 keystore 签名文件的配置信息了,如下图所示
三、项目中配置签名信息
在菜单栏中,依次点击 File - Project Structure
依次点击 Module - app - Signing Configs - +
,然后添加刚才生成的正式签名
点击Apply ,再点击ok,完成添加配置
点击按钮 ok 后,Android Studio 会自动在app模块的build.gradle中添加签名信息,如下图所示
签名配置成功后,把签名文件和环境关联,参照1流程,在Build Types里面进行设置
四、验证签名是否成功
方法一(keytool,只支持V1签名校验) 进入JDK/bin, 输入命令 keytool -printcert -jarfile xxx.apk (显示签名证书信息) 参数: -printcert 打印证书内容 -jarfile 已签名的jar文件 或apk文件 方法二(apksigner,支持V1和V2签名校验) 进入Android SDK/build-tools/SDK版本, 输入命令 apksigner verify -v --print-certs xxx.apk 参数: -v, --verbose 显示详情(显示是否使用V1和V2签名) --print-certs 显示签名证书信息
第一步我们在生成签名后,在指定文件夹下生成了一个 release 版的 apk 包,现在我们用方法二验证APK的证书链,在终端输入如下命令:
apksigner verify -v --print-certs 安装包路径.apk
输入 以上命令后,就可以在终端上看到 keystore 签名文件的配置信息了,如下图所示
原创文章,有什么不对的地方欢迎指正,一起进步!
来源地址:https://blog.csdn.net/c8296038795/article/details/128172449