給apk做系統簽名


有時候apk需要一些系統權限,我們能拿到系統的簽名文件就可以

1、在Manifest.xml里添加

android:sharedUserId="android.uid.system"

2、使用系統簽名工具,簽名文件來簽名apk

java -jar signapk.jar platform.pk8 platform.x509.pem test.apk test_sign.apk

這樣簽名過的文件test_sign.apk就具有了系統權限

 

 

記錄一個低級錯誤,簽名的時候,一直報錯,百思不解


java.security.cert.CertificateParsingException: signed fields invalid 
   at sun.security.x509.X509CertImpl.parse(X509CertImpl.java:1718) 
   at sun.security.x509.X509CertImpl.<init>(X509CertImpl.java:177) 
   at sun.security.provider.X509Factory.engineGenerateCertificate(X509Factory.java:90) 
   at java.security.cert.CertificateFactory.generateCertificate(CertificateFactory.java:305) 
   at com.android.signapk.SignApk.readPublicKey(SignApk.java:143) 
   at com.android.signapk.SignApk.main(SignApk.java:744)

 

最后發現,原來是platform.pk8跟platform.x509.pem順序反了。

寫成了使用java -jar signapk.jar platform.pk8 platform.x509.pem test.apk test_sign.apk命令下失敗


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM