Android应用构建:9:使用keytool创建APK文件使用的keystore
发布日期:2021-06-30 20:15:54 浏览次数:2 分类:技术文章

本文共 2370 字,大约阅读时间需要 7 分钟。

在这里插入图片描述

在前面的文章中我们使用Android Studio创建了签名用于APK文件的构建,这篇文章我们将使用keytool直接创建keystore,然后来验证APK构建是否正常,以及构建后的APK文件是否能够正常安装和使用。

事前准备

本文使用的keystore文件的创建可参看如下文章:

  • https://liumiaocn.blog.csdn.net/article/details/103578802
设定项 设定值 项目说明
Key store path keyReleaseV2.jks 签名文件名
Password liumiaocn 密码
Confirm liumiaocn 密码确认
Alias release_v2_private_key 私钥名称
Password liumiaocn 密码
Confirm liumiaocn 密码确认
Validity(years) 25 有效期(单位:年)
First and Last Name Miao Liu 持有者姓名
Organizational Unit unicorn DN的OU设定项
Organization devops DN的O设定项
City or Locality DaLian DN的L设定项
State or Province LiaoNing DN的L设定项
Country Code CN DN的C设定项

keytool使用介绍

详细的keytool使用方法可参看:

  • https://blog.csdn.net/liumiaocn/article/details/61921014

创建签名证书所使用的keystore

执行命令:keytool -genkey -alias release_v2_private_key -keypass liumiao -keyalg RSA -keysize 2048 -validity 25 -keystore keystoreByKeytool.jks -storepass liumiao

liumiaocn:Demo liumiao$ keytool -genkey -alias release_v2_private_key -keypass liumiao -keyalg RSA -keysize 2048 -validity 25 -keystore keystoreByKeytool.jks -storepass liumiaoWhat is your first and last name?  [Unknown]:  Miao LiuWhat is the name of your organizational unit?  [Unknown]:  unicornWhat is the name of your organization?  [Unknown]:  devopsWhat is the name of your City or Locality?  [Unknown]:  DaLianWhat is the name of your State or Province?  [Unknown]:  LiaoNingWhat is the two-letter country code for this unit?  [Unknown]:  CNIs CN=Miao Liu, OU=unicorn, O=devops, L=DaLian, ST=LiaoNing, C=CN correct?  [no]:  yesWarning:The JKS keystore uses a proprietary format. It is recommended to migrate to PKCS12 which is an industry standard format using "keytool -importkeystore -srckeystore keystoreByKeytool.jks -destkeystore keystoreByKeytool.jks -deststoretype pkcs12".liumiaocn:Demo liumiao$ ls keystoreByKeytool.jks keystoreByKeytool.jksliumiaocn:Demo liumiao$

使用此keystore创建证书

选择Build菜单的Generate Signed Bundle / APK…菜单选项

在这里插入图片描述
选择APK,点击Next按钮
在这里插入图片描述
选择刚刚使用keytool创建的keystore,并输入创建时使用的密码,然后点击Next按钮
在这里插入图片描述
做如下设定,然后点击Finish按钮开始构建
在这里插入图片描述

结果确认

生成的apk结果文件确认

liumiaocn:Demo liumiao$ ls -l release/total 3808-rw-r--r--  1 liumiao  staff  1945533 Dec 18 20:13 app-release.apk-rw-r--r--  1 liumiao  staff      234 Dec 18 20:13 output.jsonliumiaocn:Demo liumiao$

APK文件分析结果

在这里插入图片描述

安装模拟器安装验证

上述APK在网易MUMU安卓模拟器上成功安装

在这里插入图片描述
打开Demo应用也能正常显示信息
在这里插入图片描述

总结

不使用Android Studio本身的界面创建keystore,直接使用keytool创建,验证结果也是一样的,所以只需要提供符合keystore格式的签名文件即可满足Android的APK文件构建需要。

转载地址:https://liumiaocn.blog.csdn.net/article/details/103601104 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:Android应用构建:10:使用sdkmanager管理sdk
下一篇:Android应用构建:8:使用keytool确认证书与私钥信息

发表评论

最新留言

留言是一种美德,欢迎回访!
[***.207.175.100]2024年05月03日 05时32分35秒