?? ? ? ? 最近給游戲出包,平臺(tái)要求 v1 簽名吧,AS 打包后,adb 執(zhí)行安裝到手機(jī),我用的設(shè)備是google pixel6 , android 系統(tǒng) 13,?提示如下:
adb install -r v5_android_202308161046.apk
Performing Streamed Install
adb: failed to install /Users/Project/GitLab/tank/androidhtc/app/release/v5_android_202308161046.apk: Failure [INSTALL_PARSE_FAILED_NO_CERTIFICATES: Scanning Failed.: No signature found in package of version 2 or newer for package com.test.android]
字面意思理解就是安裝包沒有 V2 或更高等級的簽名。我又嘗試在三星平板android系統(tǒng) 8 上安裝,咦,安裝成功了。那可能就是跟設(shè)備 Api 版本有關(guān)系了。然后在官網(wǎng)找,看到了android 11(api 30)的新特性。官網(wǎng)地址:https://developer.android.com/about/versions/11/behavior-changes-11?hl=zh-cn
android 11里面有一項(xiàng)應(yīng)用打包和安裝:
一、壓縮的資源文件
? ? ? ? 如果以 Android?11(API 級別?30)或更高版本為目標(biāo)平臺(tái)的應(yīng)用包含壓縮的?resources.arsc
?文件或者如果此文件未按 4 字節(jié)邊界對齊,應(yīng)用將無法安裝。如果存在其中任意一種情況,系統(tǒng)將無法對此文件進(jìn)行內(nèi)存映射。無法進(jìn)行內(nèi)存映射的資源表必須讀入 RAM 中的緩沖區(qū),從而給系統(tǒng)造成不必要的內(nèi)存壓力,并大大增加設(shè)備的 RAM 使用量。
二、現(xiàn)在需要 APK 簽名方案 v2
?? ? ? ?對于以 Android?11(API 級別?30)為目標(biāo)平臺(tái),且目前僅使用 APK 簽名方案 v1 簽名的應(yīng)用,現(xiàn)在還必須使用?APK 簽名方案 v2?或更高版本進(jìn)行簽名。用戶無法在搭載 Android?11 的設(shè)備上安裝或更新僅通過 APK 簽名方案 v1 簽名的應(yīng)用。
注:如需驗(yàn)證您的應(yīng)用是否已使用 APK 簽名方案 v2 或更高版本進(jìn)行簽名:
apksigner verify -v test.apk
?文章來源:http://www.zghlxwxcb.cn/news/detail-652073.html
大概意思是 targetSdk 30及以上需要 v2 簽名
?解決方案:targetSdk 版本調(diào)整成?29 解決文章來源地址http://www.zghlxwxcb.cn/news/detail-652073.html
到了這里,關(guān)于解決 adb install 錯(cuò)誤INSTALL_FAILED_UPDATE_INCOMPATIBLE的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!