共有两种方法:
1: 利用命令签名:
利用build\target\product\security 下的signapk.jar platform.x509.pem platform.pk8 几个文件对未签名的apk进行签名。
签名方法如下:
1:将signapk.jar platform.x509.pem platform.pk8 以及您开发的apk放到同一目录下。
2:运行如下命令:java -jar signapk.jar platform.x509.pem platform.pk8 MyDemo.apk MyDemo_signed.apk
备注:MyDemo.apk为未签名APK, MyDemo_signed.apk为已签名APK。
2:直接签名:
将debug.keystore直接放到Eclipse中 Window/preference/android/build中的 Custom debug keystore:
debug.keystore的生成方法如下:
0. 把build/target/product/security下面的某对需要转换的key拷贝到一个你的工作目录
(下面以shared key为例:shared.pk8 & shared.x509.pem。如果是系统签名,采用platform.x509.pem platform.pk8,以下例子中的shared改成platform即可)
1. 把pkcs8格式的私钥转换为pkcs12格式:
$ openssl pkcs8 -in shared.pk8 -inform DER -outform PEM -out shared.priv.pem -nocrypt
2.生成pkcs12格式的密钥文件:
$ openssl pkcs12 -export -in shared.x509.pem -inkey shared.priv.pem -out shared.pk12 -name androiddebugkey
(注:此过程中需要输入密码:android)
3.生成keystore:
$ keytool -importkeystore -deststorepass android -destkeypass android -destkeystore debug.keystore -srckeystore shared.pk12 -srcstoretype PKCS12 -srcstorepass android -alias androiddebugkey
至此,已经生成keystore:debug.keystore
在Eclipse的Windows/Preferences/Android/Build中设置“Custom debug keystore“为刚才生成的keystore即可。
对于其它类型的key,步骤相同。
|