Android 应用签名的两种方法
一、使用pem签名
(一) apk签名命令
java ?jar signapk.jar [-w] publickey.x509[.pem] privatekey.pk8 Hello.apk Hello_signed.apk
- -w 是指对ROM签名时需使用的参数
- publickey.x509[.pem] 签名公钥文件,例如platform.x509.pem,在build\target\product\security下
- privatekey.pk8 签名私钥文件,例如platform.pk8,在build\target\product\security下
- Hello.apk 要签名的apk或者rom
- Hello_signed.apk 签名后生成的apk或者rom
- signapk.jar 签名工具,编译完后可以/out/host/linux-x86/framework/目录下,源码地址/platform/build/tools/signapk/
一般需要系统权限的使用platform签名命令
java -jar signapk.jar platform.x509.pem platform.pk8 Hello.apk Hello_signed.apk
(二)关于AndroidManifest中配置sharedUserId
在AndroidManifest.xml中配置sharedUserId可以使apk获取响应的用户uid并且能够使用与该用户相关的权限,常用的sharedUserId有system,media,shared。
android:sharedUserId="android.uid.system" android:sharedUserId="android.uid.shared" android:sharedUserId="android.media"
这时候如果不使用响应签名的话应用是不能够安装的。
二、使用keystore签名
jarsigner -verbose -keystore Android.keystore -signedjar android_signed.apk android.apk android.keystore
以上就是Android签名的两种方法,如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!