apkAndroid系統簽名

一。手動簽名:

通過編譯源碼中build/tools/signapk項目得到 signapk.jar。將系統源碼目錄 build/target/product/security/ 下的platform.x509.pem文件和platform.pk8文件以及signapk.jar文件和原始apk文件複製到同一個目錄下,運行下面的命令進行簽名, xxxxx.apk爲原始apk,new.apk爲生成的新的簽名的apk。

java -jar signapk.jar platform.x509.pem platform.pk8 xxxxx.apk new.apk

二。自動簽名:

1、編譯android源碼。

2、切換到 build/target/product/security/ 目錄

3、執行命令 openssl pkcs8 -inform DER -nocrypt -in platform.pk8 -out platform.pem     ,生成platform.pem文件

4、執行命令  openssl pkcs12 -export -in platform.x509.pem -out platform.p12 -inkey platform.pem -password pass:111111 -name 2222    ,生成platform.p12文件,命令中2222爲alias名,111111爲密碼,自動簽名配置文件中用到這兩項。

5、執行命令 keytool -importkeystore -deststorepass 111111 -destkeystore platform.jks -srckeystore platform.p12 -srcstoretype PKCS12 -srcstorepass 111111   ,生成platform.jks  ,改文件爲簽名用到的最終文件, -deststorepass 111111設置的是這個簽名的密碼。

6、將 platform.jks 、platform.x509.pem 和  platform.pk8 拷貝指定目錄下。

7、在android studio工程中,在工程app目錄下的build.gradle中添加如下配置:


signingConfigs {
release {
storeFile file("../xxx/xxx/platform.jks") //簽名文件的相對路徑
storePassword “111111” //簽名密碼
keyAlias “SignDemo” //簽名名稱
keyPassword “111111” //簽名密碼
}

 

debug{
storeFile file("../xxx/xxx/platform.jks") //簽名文件的相對路徑
storePassword “111111” //簽名密碼
keyAlias “SignDemo” //簽名名稱
keyPassword “111111” //簽名密碼
}
}
 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章