Run 直接安裝 → **正常**。APK 未經過正確簽名,或簽名不一致。
debug.keystore 簽名,包名一致直接覆蓋安裝。Build > Build Bundle(s) / APK(s) > Build APK(s) → **輸出未簽名 APK**,無法安裝。Generate Signed Bundle / APK 但**密鑰庫路徑/別名/密碼錯誤**,或**未勾選 V1/V2 簽名** → 簽名無效。Build → Generate Signed Bundle / APKAPK → Next.jks/.keystore 文件,輸入存儲密碼、密鑰別名、密鑰密碼。Create new 填寫信息生成新密鑰庫(**妥善備份!**)。Finish。# 命令行檢查
apksigner verify --print-certs your_app.apk
# 或
jarsigner -verify -verbose -certs your_app.apk
輸出應顯示 verified 及憑證信息。
| 現象 | 原因 | 解決 |
|---|---|---|
| 安裝提示「解析包錯誤」 | APK 未簽名或簽名損壞 | 重新 Generate Signed APK,勾選 V1+V2 |
| 提示「未安裝」無具體錯誤 | 簽名不一致(debug vs release) | 先卸載舊版,或統一用同一簽名 |
| Android 7.0+ 安裝失敗 | 僅 V1 簽名,缺 V2 | 勾選 V2 Signature |
| 密鑰庫密碼忘記 | 無法恢復 | 只能生成新密鑰庫,應用需更換包名重新上架 |
apksigner 或 Gradle signingConfig 自動化簽名。debug.keystore 統一簽名,避免頻繁卸載重裝。記住:**沒有正確簽名的 APK 只是一堆無法安裝的字節碼。**