1.jdk
2.sdk
3.gradle
本文主要是不需要通過 androidstudio 完整編譯打包簽名生成apk的過程,可以通過sdk中的apksigner工具完成,也在和使用gradle來完成。
首先使用 keytool 生成乙個私鑰,keytool 位於 jdk 中的 bin/ 目錄中,開啟命令列輸入:
keytool -genkey -v -keystore ruomiz-release-key.jks
-keyalg rsa -keysize 2048 -validity 10000 -alias ruomiz
會在當前目錄生成乙個ruomiz-release-key.jks的檔案 採用的rsa非對稱加密,標誌名為 my-alias,有效期為10000天。
1.構建apk
開啟命令列,切換到專案根目錄,或者在專案根目錄下開啟命令列
gradlew assemblerelease
//gradlew assembledebug 構建除錯的apk
執行完成後會在 module 的 build/outputs/apk 中建立乙個未簽名的 apk。這個 apk 暫未簽名,需要用私鑰簽名。
2.對齊未簽署的apk
使用 zipalign 對齊 apk,在 sdk 的 build-tools 下面,需要把上面生成的 apk 拷貝進去:
為了方便檢視我將 apk 改了名字
執行成功以後會生成乙個對齊的 apk
3.使用私鑰簽署 apk
apksigner 和 zipalign 都在 sdk 的 build-tools 目錄下,將 keytools 生成的簽名檔案( jks 檔案)拷貝進來:
可以驗證apk是否簽署成功:
按照上述步驟已經生成簽名的apk。
首先需要配置jks的簽名檔案,然後將生成的簽名檔案(jks)拷貝到專案 module下
在專案模組 build.gradle 下新增
android
signingconfigs
}buildtypes }}
簽名檔案需要和build.gradle檔案在同一目錄。
進入專案所在根目錄shift+滑鼠右鍵 ,以命令列形式開啟,執行:
gradlew assemblerelease
驗證:
可以將生成的 apk 解壓 然後 meta-inf 中 有 cert.rsa 檔案,命令列切換目錄到解壓目錄,執行:
keytool -printcert -file meta-inf/cert.rsa
會出現jks的簽名資訊 Android 命令列構建和簽署APK
1.jdk 2.sdk 3.gradle 本文主要是不需要通過 androidstudio 完整編譯打包簽名生成apk的過程,可以通過sdk中的apksigner工具完成,也在和使用gradle來完成。首先使用 keytool 生成乙個私鑰,keytool 位於 jdk 中的 bin 目錄中,開啟命...
Android 命令列構建和簽署APK
1.jdk 2.sdk 3.gradle 本文主要是不需要通過 androidstudio 完整編譯打包簽名生成apk的過程,可以通過sdk中的apksigner工具完成,也在和使用gradle來完成。首先使用 keytool 生成乙個私鑰,keytool 位於 jdk 中的 bin 目錄中,開啟命...
打造乙個全命令列的 Android 構建系統
ide都是給小白程式設計師的,大牛級別的程式設計師一定是命令列控,終端控,你看大牛都是使用vim,emacs 就一切搞定 這話說的雖然有些絕對,但是也不無道理,做開發這行要想效率高,自動化還真是缺少不了命令列工具,因為只有命令列才是最佳的人機互動工具。其實ide也是底層也是呼叫命令列工具而已,只不過...