為進一步保護使用者隱私,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 以上版本的裝置上要求背景位置資訊時,系統對話方塊不會顯示啟用背景位置資訊存取權的按鈕。如要啟用背景位置資訊存取權,使用者必須在設定頁面中,將應用程式的位置資訊權限設為「一律允許」,如「要求背景位置資訊」指南所述。
其他資源
如要進一步瞭解如何存取背景位置資訊,請參閱下列資料: