使用 Android 签名 APK
1 簽名的作用
1.1 確定發布者的身份
應用開發者可以通過使用相同包名來替換已經安裝的程序,而使用簽名可避免該情況發生。
1.2 確保應用的完整性
簽名會對應用包中的每個文件進行處理,以確保文件不被替換。
2 使用 Android Studio 對 Android應用 簽名
2.1 選擇發布方式
在菜單欄中找到Build,選擇Generate Signed Bundle/APK…菜單項。
- Android App Bundle方式發布的App更小、安裝更快,但僅支持Google Play。
- 選擇APK方式,單擊Next按鈕。
2.2 創建數字證書
若系統中還沒有數字證書,則單擊Create new…按鈕。
填寫相關信息,單擊OK按鈕。
注意兩處密碼和確認密碼要相同,否則會出錯。
單擊Next按鈕。
2.3 保存安裝包
選擇安裝包的存儲路徑,以及生成的版本,單擊Finish按鈕。
3 使用 Android命令 對 APK 簽名
3.1 打開命令行窗口
點擊Terminal,或使用快捷鍵Alt+F12打開命令行窗口。
3.2 生成數字證書
在命令行窗口中輸入以下指令。
keytool -genkeypair -alias testkey02 -keyalg RSA -validity 365 -keystore testkey02.jks-genkeypair:指定生成數字證書。
-alias:指定數字證書的別名。
-keyalg:指定數字證書的算法。
-validity:指定數字證書的有效期限,以天為單位。
-keystore:指定數字證書的存儲路徑。
以交互式方式輸入相關信息。
3.3 生成未簽名的APK安裝包
在菜單欄中找到Build,選擇Build Bundle(s) / APK(s)。
選擇Build APK(s)。
完成后可在項目的app/build/outputs/apk/debug路徑下找到app-debug.apk文件。
3.4 對安裝包進行簽名
由于需要使用到apksigner.bat命令,所以需要先將Android SDK的build-tools目錄添加到PATH環境變量中。
完成后在命令行窗口中輸入以下指令。
sign:指定使用apksigner命令執行簽名。
–ks:指定數字證書的存儲路徑。
–ks-key-alias:指定數字證書的別名。
–out:指定簽名后的APK文件的文件名。
最后一個參數代表未簽名的APK文件。
在這里出現了系統找不到指定的文件的錯誤。
嘗試將指令中 –out 之后的 Map_testkey02.jks 和 app-debug.apk 替換為了相應文件的絕對路徑。
再次執行指令,完成后會在項目的app/build/outputs/apk/debug路徑下生成Map_testkey02.apk和Map_testkey02.apk.idsig文件。
總結
以上是生活随笔為你收集整理的使用 Android 签名 APK的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 好色鬼 颜色收藏
- 下一篇: ctf镜子里面的世界_在秋天遇见“冰雪世