zoukankan      html  css  js  c++  java
  • 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
            }
        }

      

  • 相关阅读:
    组合和封装
    面向对象之继承与派生
    实例化产生对象和绑定关系
    面向对象程序设计和类
    常用模块(hashlib、suprocess、configparser)
    常用模块re模块(正则表达式)
    包及常用模块(time、datetime、random、sys)
    python内置函数大全
    软件开发规范及常用模块
    [NOI Online 提高组]序列 (并查集+二分图判定)
  • 原文地址:https://www.cnblogs.com/andlp/p/11417461.html
Copyright © 2011-2022 走看看