1.使用命令行
java -jar signapk.jar platform.x509.pem platform.pk8 intput.apk out.apk
高版本的还需要配置java.library.path
java -Djava.library.path=lib64 -jar signapk.jar platform.x509.pem platform.pk8 intput.apk out.apk
2. 使用android studio
2.1 生成签名文件
需要在系统中更加platform的签名密钥来生成签名文件供android studio使用。
使用openssl工具生成platform.pem 文件
openssl pkcs8 -inform DER -nocrypt -in platform.pk8 -out platform.pem
使用openssl工具生成 platform.p12 文件,并设置别名和密码
openssl pkcs12 -export -in platform.x509.pem -out platform.p12 -inkey platform.pem -password pass:android -name androidsystemkey
使用keytool工具生成 platform.jks 签名文件
keytool -importkeystore -deststorepass android -destkeystore ./platform.jks -srckeystore ./platform.p12 -srcstoretype PKCS12 -srcstorepass android
2.2 导入签名文件
android {
...
signingConfigs {
config {
keyAlias 'androiddebugkey'
keyPassword 'android'
storeFile file('../../imx8/app-release-key.jks')
storePassword 'android'
}
}
buildTypes {
debug {
signingConfig signingConfigs.config
}
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
signingConfig signingConfigs.config
}
}
...
}