MTK Android12 內置應用問題小結

#Android.mk配置的問題

error: mismatch in the <uses-library> tags between the build system and the manifest: - required libraries in build system: [] vs. in the manifest: [] - optional libraries in build system: [] vs. in the manifest: [androidx.window.extensions, androidx.window.sidecar]

你可能會遇到類似問題:其實Android 12 對 應用預裝 會強制進行<uses-library>檢查,所以當應用有這個引用,但是mk配置里沒做相關配置,就會出現(xiàn)上面的問題。

解決辦法:

第一種:忽略檢查

LOCAL_ENFORCE_USES_LIBRARIES := false

第二種:指明使用的庫,應用申明的都要寫,中間用空格隔開

LOCAL_OPTIONAL_USES_LIBRARIES := org.apache.http.legacy androidx.window.extensions?

FAQ:

?關于APP <uses-library>的使用情況查看:使用aapt 工具,可以查看到使用情況?

aapt dump badging? xxx.apk

? ?

#安裝包的問題

? ? ? ? 對于Google的以及一些上架GooglePlay的應用,如果使用了 Android APP bundle 方式打包的,那么獲取到的安裝包基本都是那種分離包,即原來一個完整的apk,將里面的適配UI資源,語言適配,so包適配等都單獨打成一個apk包,從而GooglePlay在安裝時,會根據(jù)設備的情況進行選裝這樣子,下面一張Google Docs 的分離包壓縮包,感受下:


可以看到,有很多apk

所以,對于單APK的傳統(tǒng)配置,這種分離包,且有依賴關系的,無法配置,所以一個比較可行的解決辦法就是,尋找老一點的版本,沒有做分離包支持的版本,像這個網(wǎng)站就是個不錯的選擇:

https://www.apkmirror.com/

類似這樣GooglePlay的鏡像下載網(wǎng)站,下載下來的單獨APK文件,也不是絕對完全的,因為有的較新的版本,雖然是一個整合的完整的版本,但是卻有簽名缺失的情況

這種情況 adb install 可以安裝,但是系統(tǒng)代碼內預置卻無法安裝

補充:

查看apk 簽名證書的信息:利用keytool 工具

keytool -printcert -jarfile ../../xxxxx.apk

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容