為進一步保護使用者隱私,Android 11 新增了一次性位置存取權,並變更使用者授予背景位置存取權的方式。這些更新會影響在 Android 11 以上版本上執行的所有應用程式。
一次性存取
在 Android 11 以上版本中,每次應用程式要求存取前景位置資訊時,系統權限對話方塊就會包含稱為「僅允許這一次」的選項 (如圖 1 所示)。這個選項可讓使用者進一步控管應用程式存取位置資訊的時機。
進一步瞭解系統如何處理一次性權限。
背景位置資訊存取權
Android 11 會變更應用程式功能取得背景位置資訊的存取權的方式。本節將說明這些變更。
如果應用程式功能從背景存取位置資訊,請確認該存取權是否必要。請考慮透過其他方式取得功能所需的資訊,如「在背景存取位置資訊」一文所述。
另外要求背景位置資訊
如在執行階段要求位置存取權指南所述,您應執行位置資訊漸進式要求。如果您的應用程式指定 Android 11 以上版本,系統會強制執行此最佳做法。如果您同時要求取得前景位置資訊存取權和背景位置資訊存取權,系統會忽略要求,且不會授予應用程式任何權限。
權限對話方塊變更
變更詳細資料
變更名稱:BACKGROUND_RATIONALE_CHANGE_ID
變更 ID:147316723
如何切換
測試應用程式與 Android 11 的相容性時,您可以使用下列 ADB 指令開啟或關閉這項變更:
adb shell am compat enable (147316723|BACKGROUND_RATIONALE_CHANGE_ID) PACKAGE_NAME
adb shell am compat disable (147316723|BACKGROUND_RATIONALE_CHANGE_ID) PACKAGE_NAME
如要進一步瞭解相容性架構和切換變更,請參閱「在應用程式中測試及偵錯平台行為變更」。
當應用程式功能在搭載 Android 11 以上版本的裝置上要求背景位置資訊時,系統對話方塊不會包含啟用背景位置資訊存取權的按鈕。如要啟用背景位置資訊存取權,使用者必須在設定頁面中為應用程式的位置資訊權限設定「一律允許」選項,如這篇文章所述。
其他資源
如要進一步瞭解如何存取背景位置資訊,請參閱下列資料: