应用想要获取系统权限的话就必须要有系统签名,但是在开发一个系统的时候,为了系统的安全性,往往会去改变系统的签名。我们都知道通过platform.pk8 platform.x509.pem和signapk.jar可以对应用进行签名操作,但是这样很麻烦,而且也没办法使用Eclipse中的调试操作了,最简单的方式还是生成keystore然后放在Eclipse里,这样每次编译生成的APK就会自动签上名,方便许多。
下面来简单讲讲如何生成对应系统的系统签名:
1.android 源码目录build\target\product\security 取platform.pk8 platform.x509.pem放到一个目录下
2 openssl pkcs8 -in platform.pk8 -inform DER -outform PEM -out shared.priv.pem -nocrypt //生成shared.priv.pem
3 openssl pkcs12 -export -in platform.x509.pem -inkey shared.priv.pem -out shared.pk12 -name androiddebugkey //生成pkcs12
Enter Export Password: (输入密码android,默认是android,如是自己制作的key,输入对应的密码)
Verifying - Enter Export Password:(输入密码android)
4 生成debug.keystore
keytool
-importkeystore -deststorepass android -destkeypass android
-destkeystore debug.keystore -srckeystore shared.pk12 -srcstoretype
PKCS12 -srcstorepass android -alias androiddebugkey
5.eclipse
的Windows/Preferences/Android/Build中设置"Custom debug
keystore"为刚才生成的keystore即可 直接使用apk,run调试即可,就不用再去用signapk.jar,如java -jar
signapk.jar platform.x509.pem platform.pk8 *.apk **.apk