一 谷歌 TargetSdkVersion 特性背景
谷歌要求,在 P 版本中應用設置的TargetSdkVersion需要>=17,否則將彈出警告對話框來提示用戶,並且谷歌有明確的CDD要求,該提示無法去除。
二 適配指導
修改應用的 TargetSdkVersion 值:
建議開發者將 TargetSdkVersion設置成17+,如果認爲TargetSdkVersion設置過高,適配工作量太大,也可以將TargetSdkVersion設置成17進行適配,此設置適配工作量最小。
測試並解決由 TargetSdkVersion 引入的兼容性問題
開發者可參考谷歌提供的適配指導文檔,並且需重點關注谷歌每個新版本中只對 TargetSdkVersion 生效的變化和修改:
P版本:
將應用遷移到 Android P 鏈接: https://developer.android.com/preview/migration
Android P 功能和 API 鏈接: https://developer.android.com/preview/features
Android P 行爲變更 鏈接: https://developer.android.com/preview/behavior-changes
重點關注:
對於非 SDK 接口的限制 鏈接: https://developer.android.com/preview/restrictions-non-sdk-interfaces
劉海屏適配 鏈接: https://developer.android.com/preview/features#cutout
O版本: 向 Android 8.0遷移應用 鏈接: https://developer.android.com/about/versions/oreo/android-8.0-migration
Android 8.0 功能和 API 鏈接: https://developer.android.com/about/versions/oreo/android-8.0
重點關注: Android 8.0 行爲變更 鏈接: https://developer.android.com/about/versions/oreo/android-8.0-changes
最大屏幕縱橫比:如果應用設置TargetSdkVersion>=26,那麼在任何縱橫比的屏幕都會默認全屏顯示,開發者需注意不同比例屏幕的顯示適配。
以 Android 7.1(API級別25)或更低版本爲目標平臺的應用默認的最大屏幕縱橫比爲 1.86。針對 Android 8.0或更高版本的應用沒有默認的最大縱橫比。如果您的應用需要設置最大縱橫比,請使用定義您的操作組件清單文件中的maxAspectRatio 屬性。
後臺執行限制:廣播和後臺服務管控 鏈接: https://developer.android.com/about/versions/oreo/background
其他:
N版本:
Android 7.0 行爲變更 鏈接: https://developer.android.com/about/versions/nougat/android-7.0-changes
重點關注的特性變化:
NDK 應用鏈接至平臺庫從 Android 7.0 開始,系統將阻止應用動態鏈接非公開 NDK 庫,這種庫可能會導致您的應用崩潰,下表描述的是根據應用使用的私有原生庫及其目標 API 級別 (android:targetSdkVersion),應用預期顯示的行爲:
M版本:
Android 6.0 變更 鏈接: https://developer.android.com/about/versions/marshmallow/android-6.0-changes
Android 6.0 API 鏈接: https://developer.android.com/about/versions/marshmallow/android-6.0
Android 6.0 測試指南 鏈接: https://developer.android.com/about/versions/marshmallow/android-6.0-testing
L版本:
Android 5.1 API 鏈接: https://developer.android.com/about/versions/android-5.1
Android 5.0 API 鏈接: https://developer.android.com/about/versions/android-5.0
Android 5.0 行爲變更 鏈接: https://developer.android.com/about/versions/android-5.0-changes
K版本:
Android 4.4 API 鏈接: https://developer.android.com/about/versions/android-4.4
J版本:
Android 4.3 APIs 鏈接: https://developer.android.com/about/versions/android-4.3
Android 4.2 APIs(API Level: 17) 鏈接: https://developer.android.com/about/versions/android-4.2
Android 4.1 APIs(API Level: 16) 鏈接: https://developer.android.com/about/versions/android-4.1
建議開發者多次對應用進行測試驗證,避免引入新的兼容性問題
三 測試驗證方法
方法一:購買谷歌 Pixel、Pixel XL、Pixel2、Pixel 2 XL,刷 P 版本進行測試版本下載
參考: https://developer.android.google.cn/preview/download
*DP2版本,需要將網頁底部的顯示語言修改爲英文,中文顯示的仍爲DP1版本
刷機
*刷機前需要退出之前登錄的谷歌賬號
1.下載對應設備的壓縮包並解壓;
2.手機連 USB 後,執行 adb reboot bootloader 命令;
3.手機出現小機器人圖案,並顯示‘unlock’字樣時,執行壓縮包中的 bat 腳本。
如果是“lock”字樣:
1.連續點擊設置-版本號7次,打開開發人員選項;
2.在開發人員選項中打開 OEM unlock;
3.連接手機到電腦,執行 adb reboot bootloader 命令到小機器人界面;
4.執行 fastboot oem unlock,手機就解鎖了,再使用上面的刷機方法即可。
方法二:遠程真機調試
1.新用戶註冊使用
新用戶如需申請使用華爲終端開放實驗室的雲測功能,需加入安卓綠色聯盟,成爲會員。可通過以下步驟申請:
使用所在公司尾綴的郵箱進行賬號註冊;
將您新申請的賬號、所在公司、個人姓名及電話、負責的應用名稱發送至[email protected],申請成爲安卓綠色聯盟會員,通過審覈後,將爲您開通使用權限;
2.登錄賬號選擇真機進行遠程調試
3.選擇手機:Pixel
4.點擊“立即體驗”,上傳 APK 進行調試
方法三:使用谷歌模擬器驗證
安裝和配置 Android P SDK 和模擬器
參考: https://developer.android.google.cn/preview/setup-sdk
P版本中谷歌加入了“非SDK接口使用限制”,此特性將對所有開發者產生影響。
點擊填寫《非 SDK 適配問卷》,我們期待得到您的反饋!