本文章向大家介绍Android 根据源码文件生成系统签名.jks文件以及对APK文件进行签名,主要包括Android 根据源码文件生成系统签名.jks文件以及对APK文件进行签名使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
最近定制系统应用开发用到了系统签名,系统那边给了platform.pk8,platform.x509.pem两个文件
如何使用这里记录一下
首先在APK端的AndroidManifest.xml 加上
android:sharedUserId="android.uid.system"
系统签名两种方式
一:对APK文件进行签名
在Android源码目录:android/build/target/product/security/ 找到签名文件“platform.pk8”和“platform.x509.pem”
签名工具目录:android/prebuilts/sdk/tools/lib 找到签名工具:signapk.jar
新建一个目录(任意位置),把这三个文件放进去
管理员模式运行cmd cd进到放这三个文件的文件夹,
cmd执行以下指令,其中input.apk为要签名的apk文件, output.apk为签名后输出的apk文件,即可为APK文件进行系统签名;
java -jar signapk.jar platform.x509.pem platform.pk8 input.apk output.apk
二:生成.jks文件直接配置在AndroidStudio的build.gradle中
首先进入android源码中密钥对的目录
cd android\build\target\product\security
生成platform.pem文件
openssl pkcs8 -inform DER -nocrypt -in platform.pk8 -out platform.pem
生成platform.p12文件 设置别名和密码也就是Android studio打包APK文件时输入的别名和密码
openssl pkcs12 -export -in platform.x509.pem -out platform.p12 -inkey platform.pem -password pass:android -name key
生成platform.jks文件(keystore文件)(-srcstorepass android)这个是keystore密钥库的密码
keytool -importkeystore -deststorepass android -destkeystore ./platform.jks -srckeystore ./platform.p12 -srcstoretype PKCS12 -srcstorepass android
直接copy以上指令生成的.jks 信息如下:
密钥库:platform.jks; 密钥库口令:android
别名:key; 别名的口令:android
Generate Signed APK使用
直接配置到build.gradle使用
build.gradle配置如下即可直接在调试时也打上系统签名进行调试:
signingConfigs {
release {
storeFile file("C:/Users/Administrator/sigapk/test.jks") .jks文件的路径
storePassword 'key密码'
keyAlias '你设置的key别名'
keyPassword 'key别名的密码'
}
debug {
storeFile file("C:/Users/Administrator/sigapk/test.jks") .jks文件的路径
storePassword 'key密码'
keyAlias '你设置的key别名'
keyPassword 'key别名的密码'
}
}
buildTypes {
debug { signingConfig signingConfigs.debug
}
release { signingConfig signingConfigs.release
}
}