Google is committed to advancing racial equity for Black communities. See how.
本頁面由 Cloud Translation API 翻譯而成。
Switch to English

三態定位權限

Android 10中的三態位置權限使用戶可以更好地控制應用訪問設備位置的方式。

在Android 9及更低版本中,用戶在向應用授予位置訪問權限時會做出持久選擇。他們可以拒絕允許 ,後者允許應用程序始終訪問(前景和背景)。 Android 10中的三態位置權限為用戶提供了三個選項,用於允許應用訪問設備的位置。當應用程序請求用戶時,系統會提示用戶授予或拒絕權限級別。

用戶通常會看到圖1中顯示的三個選項。但是,在某些用例中,只需要其中兩個選項,在這種情況下,只顯示這兩個選項。

Tristate location permissions screen
圖1.三態通知屏幕

這是三個選項:

  • 一直允許 :即使不使用應用程序(在後台運行),應用程序也知道該設備的位置。這等效於在Android 9及更低版本中允許權限。
  • 僅在應用程序正在使用時才允許 :(僅前景)設備的位置僅在應用程序正在運行時才可見。
  • 拒絕 :設備的位置永遠不會對應用程序可見。這與在Android 9及更低版本中拒絕權限相同。

當應用程序請求權限時,系統會提示用戶授予位置訪問權限。

一旦用戶僅在應用程序正在使用中時才授予允許訪問權限,則應用程序可以一直請求增加對“ 允許”的訪問權限。用戶會看到一個請求對話框(如圖2所示)。如果用戶選擇保留使用中訪問權限 ,則當應用在下次使用時訪問設備位置時,對話框將提供保留選項, 並且不再詢問

對於以Android 10為目標的應用,在以下情況下會出現該對話框:

  • 至少授予許可後24小時。
  • 僅當應用程序在後台接收位置時。
  • 屏幕打開時,並且用戶未在使用其他應用程序。
Incremental permissions
圖2.增量權限

要了解有關請求權限的更多信息,請參閱App訪問設備位置 。有關您的應用程序針對Android 9及更低版本的應用程序的詳細信息,請參閱繼續用戶啟動的操作

影響力

三態位置權限功能會影響在後台運行時需要設備位置訪問權限的所有應用,而Android 10中則需要該應用。

您可以更改代碼,但不能更改或自定義框架中與權限相關的行為。

實作

無論應用程序的目標SDK是什麼,三態位置權限都將應用於Android 10中的應用程序。

有關實現應用程序用例(有關升級)的信息,請參閱開發人員文檔中的“ 設計設備升級方案”部分。

要查看如何針對不同用例啟用訪問權限(例如要求對Google Maps或Google Play服務之類的應用程序要求後台位置訪問),請在“ 對設備位置應用程序訪問”頁面上查看以下主題:

應用內位置訪問

用戶可以選擇將應用程序的訪問權限更改為“拒絕”或“ 僅允許” 。對於應用內位置訪問權限以及所有第一方和第三方應用,請提供下表中提供的用戶控制級別。

權限類型應用需要請求用戶提供的選項
應用僅請求前台權限僅在使用應用程序時允許
拒絕
應用程序始終會請求許可(前台和後台) 一直允許
僅在使用應用程序時允許
拒絕
所有具有位置訪問請求的應用僅在使用應用程序時允許

這些權限適用於所有位置請求。 僅在使用應用程序權限具有“ 允許”的應用程序不允許進行背景Wi-Fi,手機或藍牙掃描。

操作系統升級

在將操作系統升級到Android 10時,應用位置權限會根據以下內容進行轉換:

  • “開” 僅在使用時變為“ 允許”
  • “關閉”保持關閉狀態( “拒絕” )。
  • 預先授予的位置訪問將成為“ 僅在使用時允許”預先授予。