您当前的位置: 首页 >  android

暂无认证

  • 0浏览

    0关注

    92582博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

Android应用构建:9:使用keytool创建APK文件使用的keystore

发布时间:2019-12-18 20:26:09 ,浏览量:0

在这里插入图片描述 在前面的文章中我们使用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 liumiao
What is your first and last name?
  [Unknown]:  Miao Liu
What is the name of your organizational unit?
  [Unknown]:  unicorn
What is the name of your organization?
  [Unknown]:  devops
What is the name of your City or Locality?
  [Unknown]:  DaLian
What is the name of your State or Province?
  [Unknown]:  LiaoNing
What is the two-letter country code for this unit?
  [Unknown]:  CN
Is CN=Miao Liu, OU=unicorn, O=devops, L=DaLian, ST=LiaoNing, C=CN correct?
  [no]:  yes


Warning:
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.jks
liumiaocn: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.json
liumiaocn:Demo liumiao$
APK文件分析结果

在这里插入图片描述

安装模拟器安装验证

上述APK在网易MUMU安卓模拟器上成功安装 在这里插入图片描述 打开Demo应用也能正常显示信息 在这里插入图片描述

总结

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

关注
打赏
1653961664
查看更多评论
立即登录/注册

微信扫码登录

2.1662s