Android 系统apk签名

系统apk的签名的两种方法

signApk.jar签名(手动签名)

在源码目录找到这三个文件
build/target/product/security/platform.pk8
build/target/product/security/platform.x509.pem
out/host/linux-x86/framework/signapk.jar

运行指令(window也可用cmd执行)
java -jar signapk.jar platform.x509.pem platform.pk8 unsign.apk signed.apk

生成jks文件签名

在build/target/product/security/目录下找到platform.keystore,使用Android Studio签下名就可以了(这里多说一句,as签名时一般使用的是jks文件,如果使用keystore的话会略有不同)
如果没有这个文件,可以根据上面的文件使用openssl工具执行以下命令生成jks文件用于签名,这里的执行环境是linux,如果需要在window下执行,需要配置安装openssl环境

openssl pkcs8 -inform DER -nocrypt -in platform.pk8 -out platform.pem

生成platform.pem

openssl pkcs12 -export -in platform.x509.pem -out platform.p12 -inkey platform.pem -password pass:android -name alia

生成platform.p12,android是密码,alia是别名

keytool -importkeystore -deststorepass android -destkeystore ./platform.keystore -srckeystore ./platform.p12 -srcstoretype PKCS12 -srcstorepass android

生成platform.jks ,这里的-deststorepass android、-srcstorepass android中的android都为上条指令生成的密码。

你可能感兴趣的:(Android 系统apk签名)