Android系统签名和转系统签名转为keystore文件
Comment通过在应用的AndroidManifest.xml中的根节点下指定android:sharedUserId=”android.uid.system”可以将自己的应用运行到system进程,这样可以免除获取运行时权限,不过指定sharedUserId为android.uid.system需要使用到系统签名,否则apk无法正常安装
系统签名路径
系统签名在源码目录的android/build/target/product/security/
目录下,一般使用的为platform.pk8
和platform.x509.pem
有些厂商的源码环境下包含多个类似文件并会对系统签名进行重新指定,需要进行确定.
直接使用系统签名对apk进行签名
通过android-sdk的tools/lib目录下的signapk.jar可以直接对apk进行签名
需要将这3个文件放置在同一个文件夹下,使用如下命令进行签名java -jar signapk.jar platform.x509.pem platform.pk8 inputApkName.apk outputApkName.apk
将系统签名文件转化为android studio生成apk所需的keystore文件
使用Github中的keytool-importkeypair工具进行转换,需要在linux环境下进行操作
- 下载该工具后一般将该工具拷贝到源码目录下系统签名目录所在的目录,chmod 777 keytool-importkeypair给予运行权限
- 使用如下命令进行生成
./keytool-importkeypair -k ./keystoreFileName -p password -pk8 platform.pk8 -cert platform.x509.pem -alias aliasName
其中的password对应Android中的Key store password和Key password,aliasName对应Key alias