天天看點

AndroidStudio配置數字證書簽名及切換debug和release(包含使用adb指令對apk進行簽名)

使用adb指令對apk進行簽名:

jarsigner -verbose -keystore keystore.jks -signedjar signed.apk unsigned.apk alias_name
           

keystore.jks: key的路徑及名稱.

signed.apk : 簽名以後生成的app名稱.

unsigned.apk: 未簽名檔案路徑及名稱.

alias_name :簽名的别稱.

指令會提示輸入密碼,密碼輸入後看不見,沒有關系,按回車即可,生成的簽名apk在目前路徑下。

如:在C:\Program Files\Android\Android Studio1\jre\bin目錄下運作:

 .\jarsigner -verbose -keystore E:\download\xxx.jks -signedjar E:\download\signed.apk unsigned.apk bieming

奇怪的是,簽名檔案、兩個apk不能放在同一目錄下,否則會簽名失敗。。。

再介紹下AndroidStudio生成簽名的簡要步驟:

AndroidStudio配置數字證書簽名及切換debug和release(包含使用adb指令對apk進行簽名)
AndroidStudio配置數字證書簽名及切換debug和release(包含使用adb指令對apk進行簽名)

AndroidStudio的gradle自動簽名設定:

android {
    //簽名設定
    signingConfigs {
        release {
            keyAlias '...'
            keyPassword '...'
            storeFile file('../xx.jks')//加"../"表示該檔案位于上一級即項目根路徑下
            storePassword '...'
        }
        debug {
            keyAlias '...'
            keyPassword '...'
            storeFile file('../xx.jks')
            storePassword '...'
        }
    }
    buildTypes {
        release {
            ...
            signingConfig signingConfigs.release
        }
        debug {
            ...
            signingConfig signingConfigs.debug
        }
    }
}
           

選擇debug或release方式編譯:

AndroidStudio配置數字證書簽名及切換debug和release(包含使用adb指令對apk進行簽名)