每次發布 Android 版本時,我們都會推出新功能和行為變更,讓 Android 更實用、更安全且效能更佳。在多數情況下,您的應用程式均可立即正常運作,但在某些情況下,您可能需要變更應用程式以配合平台變更。
一旦原始碼發布到 Android 開放原始碼計畫 (AOSP),使用者就能開始接收新平台。因此應用程式必須準備妥當,且執行狀況符合使用者預期,最好能夠善用新功能與 API,充分展現新平台的優點。
本文概略說明一般開發和測試階段,旨在協助您根據平台發布時程擬定計畫備妥應用程式,確保使用者在 Android 11 享有出色體驗。
一般遷移作業分為兩個階段,可同時進行:
- 確保應用程式相容性 (在 Android 11 最終版本推出之前)
- 以新的平台功能和 API 為目標 (在最終版本發布後盡快實現)
本頁將說明各階段的一般步驟。準備好開始使用時,請參閱「取得 Android 11」。
確保與 Android 11 相容
請務必針對 Android 11 測試現有應用程式的功能,確保使用者更新至最新 Android 版本時能享有良好體驗。有些平台變更內容可能會影響應用程式的行為,因此請及早進行詳盡測試,視需要調整應用程式。
一般而言,你不需要變更應用程式的 targetSdkVersion,即可調整應用程式並發布更新。同樣地,您應該也不需要使用新的 API 或變更應用程式的 compileSdkVersion,但這取決於應用程式的建構方式和所使用的平台功能。以下各節將概略說明這些步驟。
開始測試前,請務必先熟悉行為變更,瞭解這些變更可能對應用程式造成的影響 (即使您未變更應用程式的 targetSdkVersion)。
執行相容性測試
大部分情況下,Android 11 的測試相容性與您準備發布應用程式時執行的測試類型類似。建議您趁這個機會複習核心應用程式品質指南和測試最佳做法。
只要在執行 Android 11 的裝置上安裝目前發布的應用程式,並逐步完成所有流程與功能,同時確認是否有任何問題即可。為協助您專注於測試,請參閱 Android 11 中導入的行為變更,瞭解可能影響應用程式功能或導致應用程式停止運作的行為變更。請務必特別留意隱私權重大異動,並測試為因應這些異動而實作的修正。
此外,請務必檢查並測試受限制的非 SDK 介面使用情形,並改用公開 SDK 或 NDK 的對應項目。請留意說明這類存取權的 Logcat 警告,並使用 StrictMode 方法 detectNonSdkApiUsage(),以程式輔助方式進行擷取。
最後,請務必完整測試應用程式的程式庫和 SDK,確保這類元件可以 Android 11 上正常運作,並遵循隱私權、效能、使用者體驗、資料處理與權限的最佳做法。如有任何問題,請試著更新至最新版本的 SDK,或聯絡 SDK 開發人員獲得協助。
完成測試和更新作業後,建議您立即發布相容的應用程式,讓使用者及早測試應用程式。這個做法有助於確保使用者更新到 Android 11 時順利適應。
更新應用程式的指定目標,且建構時使用新 API
如先前所述,發布相容的應用程式版本後,下一步就是更新 targetSdkVersion,並善用 Android 11 中的新 API 和功能,提供 Android 11 的全方位支援。您準備就緒後即可進行更新,但請留意鎖定新平台目標版本的 Google Play 規定。
在您計畫全面支援 Android 11 的過程中,建議先查看適用於指定 Android 11 為目標版本應用程式的行為變更。這些與指定目標版本有關的行為變更,可能會導致需要您善加處理的功能問題。在某些情況下,這些變更涉及大量開發作業,因此建議您盡早瞭解。為協助您評估影響,您也可以使用相容性切換按鈕,針對特定變更項目來測試目前的應用程式。
全面支援 Android 11 的操作步驟如下。
取得 SDK、變更指定目標、使用新的 API 進行建構
如要開始測試完整的 Android 11 支援功能,請先在 Android Studio 中下載 Android 11 SDK 和其他所需工具。接著,請將應用程式的 targetSdkVersion 和 compileSdkVersion 變更為 "30",然後重新編譯應用程式。詳情請參閱設定指南。
測試 Android 11 應用程式
編譯應用程式並安裝在執行 Android 11 的裝置上之後,請開始測試,確保應用程式可以在指定 Android 11 為目標版本的環境能正常運作。某些行為變更僅適用於應用程式指定新平台版本時,因此請在測試前確認此類變更。
和基本的相容性測試一樣,逐步完成所有流程與功能測試,確認是否發生問題。將測試的重點放在應用程式指定 Android 11 為目標版本時會涉及的行為變更。請務必查看隱私權異動,並測試為因應異動而實作的修正。建議您也趁這個機會,檢查應用程式是否遵循核心應用程式品質指南和測試最佳做法。
請務必檢查受限制非 SDK 介面的使用情形,並視需要進行測試。請留意說明這類存取權的 Logcat 警告,並使用 StrictMode 方法 detectNonSdkApiUsage(),以程式輔助方式進行擷取。
最後,請務必完整測試應用程式的程式庫和 SDK,確保這類元件可以 Android 11 上正常運作,並遵循隱私權、效能、使用者體驗、資料處理與權限的最佳做法。如有任何問題,請試著更新至最新版本的 SDK,或聯絡 SDK 開發人員獲得協助。
使用「應用程式相容性」切換按鈕進行測試
Android 11 為開發人員推出新功能,方便您對指定行為變更的應用程式進行測試。如果應用程式可進行偵錯,切換按鈕可幫助您:
- 不必實際變更應用程式的 targetSdkVersion,即可測試指定的變更。切換按鈕可以強制啟用特定的行為變更,方便評估該變更對現有應用程式的影響。
- 僅對特定變更進行測試。有了切換按鈕,您可以只開啟需要測試的變更項目,不需要一次處理所有變更。
- 透過 ADB 管理切換按鈕。如果變更項目支援切換功能,您可以在自動化測試環境中,透過 ADB 指令啟用/停用這些變更。
- 使用標準變更 ID 來加速偵錯。如果變更項目可切換啟用/停用狀態,也會附上專屬 ID 和名稱,方便您在輸出的記錄檔中快速找出錯誤的根本原因。
當您準備變更應用程式的指定目標,或在進行支援 Android 11 的開發作業時,切換按鈕可提供實用協助。詳情請參閱對應的說明文件。