Android如何对应用进行系统签名

一、使用命令

获取签名文件

从系统源码环境中获取签名相关文件: platform.x509.pem、platform.pk8 、signapk.jar

  • platform.x509.pem、platform.pk8 位于 ../build/target/product/security 目录下。
  • signapk.jar 位于 ../out/host/linux-x86/framework 目录下。

使用如下命令进行签名

复制代码
java -jar signapk.jar platform.x509.pem platform.pk8 你的应用.apk 签名后的应用名.apk

二、转换为keystore

1、将pkcs8格式的私钥 platform.pk8 转化成pkcs12格式

复制代码
openssl pkcs8 -in platform.pk8 -inform DER -outform PEM -out shared.priv.pem -nocrypt

2、把公钥 platform.x509.pem 转换成pkcs12格式,并指定 密钥别名

复制代码
openssl pkcs12 -export -in platform.x509.pem -inkey shared.priv.pem -out shared.pk12 -name 密钥别名

输入上述指令后,需要连续两次输入密钥密码。

3、生成AndroidStudio中可以使用的keystore文件

复制代码
keytool -importkeystore -srckeystore shared.pk12 -srcstoretype pkcs12 -srcstorepass 密钥密码 -alias 密钥别名 -deststorepass 密钥密码 -destkeypass 密钥密码 -destkeystore 密钥名称 -deststoretype pkcs12

参考:

相关推荐
peakmain927 分钟前
异常处理 - Native 层的崩溃捕获机制及实现 (一)
android·性能优化
木头左2 小时前
【Android】听写播放器改版:中英文书写速度拆项与「正在读」高亮
android·room·media3·jetpack compose·听写
好的佩奇2 小时前
Dart 之方法、操作符与可调用对象
android·flutter·dart
恋猫de小郭3 小时前
Flutter Impeller Vulkan 内存持续上涨,问题没想到是文字阴影
android·前端·flutter
张小姐的猫13 小时前
【MySQL】访问 & 数据流动原理
android·数据库·mysql·adb·1024程序员节
朱涛的自习室16 小时前
212 个需求、22 万行代码:Agent 接管开源项目的 19 天
android·前端·人工智能
传奇开心果21 小时前
【Flutter踩坑排雷】第3课:const 误用坑|const 错误使用引发 UI 异常与性能损耗
android·flutter
哲鲤21 小时前
AOSP思绎|Android 多媒体:一段视频为什么需要这么多服务
android
阿杰m21 小时前
Android源码第三章:Handler、Looper 与 MessageQueue——一条消息如何入队、唤醒并执行
android