Android系統簽名轉換為keystore


通常,我們在做系統用戶開發時,需要給應用加上系統簽名,使其擁有系統權限,簽名方式可以使用系統源碼中的platform.pk8、platform.x509.pem、signapk.jar對應用簽名,使用方法:

java -jar signapk.jar platform.x509.pem platform.pk8 Test01.apk Test01_signed.apk

  這種方法使得開發非常不方便,每次編譯完成之后還有進行簽名操作,如果能將簽名文件轉換為keystore文件,加入到AndroidStudio的gradle編譯腳本中,就可以一鍵生成簽名后的apk。
轉換方法如下:

1.openssl pkcs8 -in platform.pk8 -inform DER -outform PEM -out shared.priv.pem -nocrypt

2.openssl pkcs12 -export -in platform.x509.pem -inkey shared.priv.pem -out shared.pk12 -name testalias

其中testalias為keyAlias

3.keytool -importkeystore -deststorepass android -destkeypass android -destkeystore source.keystore -srckeystore shared.pk12 -srcstoretype PKCS12 -srcstorepass android -alias keyAlias

生成的source.keystore即為所需要的keystore文件,storePassword和keyPassword為android
gradle配置:

signingConfigs {
        release {
            storeFile file('D:\\sign\\keystore\\source.keystore')
            storePassword 'android'
            keyAlias 'keyAlias'
            keyPassword 'android'
        }
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
            signingConfig signingConfigs.release
        }
        debug {
            signingConfig signingConfigs.release
        }
    }

 

  

 


免責聲明!

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



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