当前位置: 首页 > news >正文

使用ADB命令操作Android的apk/aab包

keystore文件转换jks文件

 操作步骤:

步骤1,生成P12文件:
keytool -importkeystore -srckeystore [文件名].keystore -srcstoretype JKS -deststoretype PKCS12 -destkeystore [文件名].p12

步骤2,生成jks文件:
keytool -v -importkeystore -srckeystore [文件名].p12 -srcstoretype PKCS12 -destkeystore [文件名].jks -deststoretype JKS

示例演示: 

步骤1:
keytool -importkeystore -srckeystore /Users/zcs/Desktop/AAB/AnimalCrusher.keystore -srcstoretype JKS -deststoretype PKCS12 -destkeystore /Users/zcs/Desktop/AAB/AnimalCrusher.p12


步骤2:
keytool -v -importkeystore -srckeystore /Users/zcs/Desktop/AAB/AnimalCrusher.p12 -srcstoretype PKCS12 -destkeystore /Users/zcs/Desktop/AAB/AnimalCrusher.jks -deststoretype JKS

查看apk的签名信息

操作:

keytool -printcert -jarfile [文件名].apk

示例:

keytool -printcert -jarfile /Users/zcs/Desktop/Test/Build/Test.apk

查看aab的签名信息

操作步骤:

步骤1:

解压待查看的apk,得到META-INF/CERT.RSA文件

步骤2:

keytool -printcert -file META-INF/CERT.RSA

示例演示:

 keytool -printcert -file /Users/zcs/Desktop/AAB/AnimalCrusher/META-INF/ANDROID.RSA


查看jks、keystore的证书指纹

操作:

keytool -list -v -keystore [文件名].jks
keytool -list -v -keystore [文件名].keystore

示例:

keytool -list -v -keystore upload_jks.jks
keytool -list -v -keystore upload_keystore.keystore

安装aab包到真机

操作步骤:

步骤1,将aab文件转换为apks文件:
java -jar <bundletool.jar的路径> build-apks --bundle=<.aab文件的路径> --output=<输出.apks的路径> --ks=<打包使用的证书文件的路径> --ks-pass=pass:<证书密码> --ks-key-alias=<证书别名> --key-pass=pass:<证书别名密码,通常与证书密码一致>
 
步骤2,安装apks文件到手机: 
java -jar <bundletool.jar的路径> install-apks --apks=<上一步中生成的.apks文件路径>

示例演示:

步骤1:
java -jar /Users/zcs/Desktop/AAB/bundletool-all-1.9.1.jar build-apks \
--bundle=/Users/zcs/Desktop/AAB/AnimalCrusher.aab \
--output=/Users/zcs/Desktop/AAB/AnimalCrusher.apks \
--ks=/Users/zcs/Desktop/AAB/AnimalCrusher.jks \
--ks-pass=pass:AnimalCrusher \
--ks-key-alias=android \
--key-pass=pass:AnimalCrusher

步骤2:
java -jar /Users/zcs/Desktop/AAB/bundletool-all-1.9.1.jar install-apks --apks=/Users/zcs/Desktop/AAB/AnimalCrusher.apks

相关文章:

  • PyTorch 分布式训练
  • 2025年渗透测试面试题总结-渗透测试红队面试九(题目+回答)
  • Milvus(21):过滤搜索、范围搜索、分组搜索
  • 【2025最新】Pycharm里如何运行多个py文件
  • Python基础学习-Day23
  • 撤回不了一点 v1.0.2,支持微信QQ钉钉飞书等消息防撤回
  • yolo11n-obb训练rknn模型
  • 博客系统技术需求文档(基于 Flask)
  • ArcGIS、InVEST与RUSLE在水土流失模拟及分析中的实践技术
  • 使用docker安装clickhouse集群
  • K230 ISP:一种新的白平衡标定方法
  • 0.66kV0.69kV接地电阻柜常规配置单
  • Data.olllo:一个可以打开 100GB CSV 文件的桌面工具
  • JavaScript-02
  • 2025.5.13总结
  • PYTHON训练营DAY24
  • 佰力博科技与您探讨表面电阻的测试方法及应用领域
  • 中国品牌日 | 以科技创新为引领,激光院“风采”品牌建设结硕果
  • 微服务,服务粒度多少合适
  • 最优化方法Python计算:有约束优化应用——线性可分问题支持向量机
  • 深圳拟出让3宗居住用地,共计用地面积6.77公顷
  • 前四个月人民币贷款增加10.06万亿元,4月末M2余额同比增长8%
  • 马上评|让查重回归促进学术规范的本意
  • 中东睿评|特朗普中东三国行:喧嚣的形式与空洞的实质
  • 孙简任吉林省副省长
  • 秦洪看盘|交易新逻辑,银行股成A股稳定器