解決app在Android P中安裝失敗以及不相容問題
阿新 • • 發佈:2018-11-07
Android P即Android 9.0 在Google IO2018正式面向全球釋出,它的代號是Pie,仍然基於Linux核心構建。全新的手勢操作選項。底部虛擬鍵將由小白點和一顆返回鍵取代。通過輕觸回到主頁、長按撥出語音助手。新的特性主要有:
- 利用 Wi-Fi RTT 進行室內定位
- 劉海平API支援
- 通知欄功能增強
- 多攝像頭支援和攝像頭更新
- HDR VP9 視訊、HEIF 影象壓縮和 Media API
可以先閱讀:https://ywnz.com/linuxxw/2556.html
詳細可參考Google官方文件介紹。
Android 9.0模擬器搭建
目前Android 9.0只在少數的幾款手機上能夠升級,如果暫時還不想購買手機,模擬器就會是最佳選擇,首先在AndroidStudio的Tools目錄下找到Android,點開目錄下的AVD Manager。
在彈出的視窗中選擇Craet Virtual Device按鈕。根據提示下載API 28的SDK資源與Image資源等,下載速度較慢,最好準備處理網站訪問問題。
下載完之後別忘了更新gradle配置:
androidTargetSdkVersion = 28
androidCompileSdkVersion = 28
執行專案過程中所遇到的問題記錄一下:
1.下載完成後開啟模擬機,執行專案,結果apk安裝失敗,提示報錯:
解決辦法是先Clean Project,再Rebuild Project
2.處理 android 方法總數超過 65536 . the number of method references in a .dex file exceed 64k
應用中的Dex 檔案方法數超過了最大值65536的上限,簡單來說,應用爆棚了.
我用的解決方案是分割 Dex 檔案實現方法
defaultConfig { multiDexEnabled true } dependencies { implementation'com.android.support:multidex:1.+' }
然後修改自定義的application類繼承MultiDexApplication類
修改完之後就可以正常運行了
3.CLEARTEXT communication to life.115.com not permitted by network security policy
問題原因: Android P 限制了明文流量的網路請求,非加密的流量請求都會被系統禁止掉
解決方案:
在資原始檔新建xml目錄,新建檔案network_security_config.xml
<?xml version="1.0"encoding="utf-8"?>
<network-security-config>
<base-config cleartextTrafficPermitted="true" />
</network-security-config>
清單檔案配置:android:networkSecurityConfig="@xml/network_security_config"
但還是建議都使用https進行傳輸