生成簽名文件(jks)
keytool -genkey -v -keystore jason-release-key.jks -keyalg RSA -keysize 2048 -validity 10000 -alias jasonkey -storepass 1234
* jason-release-key.jks , 這個(gè)是生成jks的名字
* -validity 10000 , 中的10000,單位是天
* jasonkey 是別名
* 1234 , 是你的密碼
姓名組織那些自己填, 生成后是
jason-release-key.jks
生成后會(huì)提示:
JKS 密鑰庫使用專用格式吹菱。建議使用keytool -importkeystore -srckeystore jason-release-key.jks -destkeystore jason-release-key.jks -deststoretype pkcs12
遷移到行業(yè)標(biāo)準(zhǔn)格式 PKCS12哆键。
請(qǐng)執(zhí)行
keytool -importkeystore -srckeystore jason-release-key.jks -destkeystore jason-release-key.jks -deststoretype pkcs12
- 執(zhí)行結(jié)果:Warning:
已將 "jason-release-key.jks" 遷移到 Non JKS/JCEKS杆兵。將 JKS 密鑰庫作為 "jason-release-key.jks.old" 進(jìn)行了備份。
- jason-release-key.jks.old 不用了, 用jason-release-key.jks
build 未簽名的release apk
- 在android studio 左下角選擇 : Build Variants , 選擇 release
- android studio -> Build -> Build bundle(s) / APK(s) , build 完成后, 用到未簽名的apk :
app-release-unsigned.apk
簽名APK
- 將app-release-unsigned.apk拷貝到與生成的jason-release-key.jks同一目錄下, 執(zhí)行
jarsigner -verbose -keystore jason-release-key.jks -signedjar new-signed.apk app-release-unsigned.apk jasonkey
* jasonkey 是生成jks 的別名
* new-signed.apk 就是生成的apk 的名字
* app-release-unsigned.apk , 是你要簽名apk 的名字
* 回車后輸入密碼, 就得到new-signed.apk了
* 簽名完成后會(huì)提示沒有時(shí)間戳,忽略即可, new-signed.apk會(huì)比原來未被簽名的apk文件大一點(diǎn)
也可以加上密碼
jarsigner -verbose -keystore jason-release-key.jks -storepass {storepass} -keypass {keypass} -signedjar new-signed.apk app-release-unsigned.apk jasonkey
-storepass 後面是 storepass (當(dāng)初創(chuàng)建jks 時(shí)填的)
-keypass 後面跟密碼 (當(dāng)初創(chuàng)建jks 時(shí)填的)