今天在build APK時發現,build好的APK不能裝在模擬器上
雖然可以下載,但是下載下來卻不能安裝,反而會顯示“應用程式未安裝” (App not installed)的畫面
後來又發現有些模擬器可以使用,有些模擬器不行!?
找了半天才發現原來是是簽名的問題
Android Studio 在做Generate Signed Bundle or APK 時可以選擇“Signature Versions”,分為V1及V2
看文件這個簽名是在Andoid 7.0後定義的
APK 簽章配置第 2 版Ref: https://developer.android.com/about/versions/nougat/android-7.0.html#apk_signature_v2
PackageManager 類別現在支援使用 APK 簽章配置第 2 版來驗證應用程式。APK 簽章配置第 2 版是全檔案簽章配置,可透過偵測對 APK 檔案所做的任何未授權變更,大幅改善驗證速度並增強完整性保證。
為了維持回溯相容性,APK 必須先以第 1 版簽章配置 (JAR 簽章配置) 簽署,然後再用第 2 版簽章配置簽署。有了第 2 版簽章配置,如果以第 2 版配置簽署之後,以其他憑證簽署 APK,驗證會失敗。
「N Developer Preview」稍後將提供對 APK 簽章配置第 2 版的支援。
In Android 7.0, APKs can be verified according to the APK Signature Scheme v2 (v2 scheme) or JAR signing (v1 scheme). Older platforms ignore v2 signatures and only verify v1 signatures.Ref: https://source.android.com/security/apksigning/v2.html#verification
測試:
1. 只勾選V2簽名7.0以下會直接安裝完顯示未安裝,7.0以上則可以正常安裝
2. 同時勾選V1和V2則4.0版本到9.0版本皆可正常安裝
所以之後建立APK還是把兩種簽名都打勾會比較保險,如果你下載的APK不管怎麼安裝都無法成功的話
很大的機率是因為簽名的關係,就可能要依照你的手機Android版本找有支援的簽名APK!
Slots | CasinoTopTOS
回覆刪除Slots 텍사스 홀덤 have a real-time look at 브라 밝기 조절 all the available 썬 시티 slots and casinos 우리계열 from all over the world. Play free demo games or for real 토토 랜드 같은 사이트 money.