作者: Jen Chai, 產(chǎn)品經(jīng)理
應用可以利用位置數(shù)據(jù)為 Android 用戶帶去精彩豐富的移動體驗疆拘,如搜索附近美食羊苟,跟蹤跑步距離,行車導航等等爱态。然而辨图,位置數(shù)據(jù)同樣也屬于高度敏感的個人信息之一。我們想要為用戶提供一種簡單易懂的控制模式肢藐,方便他們管理與應用共享的位置數(shù)據(jù)故河。因此,隨著?Android Q的發(fā)布吆豹,我們給予了用戶更多位置控制鱼的,并將這些控制交予給用戶。我們很高心看到開發(fā)者們在應用中揮灑創(chuàng)意痘煤,匠心打造卓越的位置體驗凑阶,與此同時,我們也希望盡己所能衷快,全力協(xié)助各位平穩(wěn)過渡至新的位置管理模式宙橱。本文將針對以下三個問題展開深度探討:?
1. Android Q 引入了哪些位置權限變更
2. 您的應用將受到哪些影響
3. 您又應該從何著手進行必要更新
過去,用戶在位置權限上只有兩種選擇蘸拔,即允許或拒絕應用訪問設備位置师郑,而且一旦授予后,該權限并不會隨應用狀態(tài)的改變 (進入或退出使用狀態(tài)) 而發(fā)生變化调窍。Android Q 在此基礎上新增了一個選項宝冕,允許用戶選擇只在應用使用期間,即當應用運行在前臺時邓萨,與應用共享位置信息地梨。這意味著 Android Q 用戶可通過以下三種方式對位置權限進行管理:?
? ?始終允許: 應用可在任何時段獲取位置信息
? ?僅在使用期間允許: 應用只能在被使用時獲取位置信息
? ?拒絕: 應用無法獲取設備的位置信息
部分應用和功能僅在使用時才需要訪問設備位置菊卷,比如說,假如用戶試圖搜索附近餐廳宝剖,那應用只需在用戶打開應用并進行搜索時洁闰,獲取設備的地理位置即可。
但是其它應用的場景則略有不同万细,即使在非使用時段渴庆,它們?nèi)耘f需要持續(xù)進行定位。例如: 一些應用可為用戶自動記錄行駛里程雅镊,幫助他們進行報稅,而且全過程無需用戶參與刃滓。
在新的位置管理模式下仁烹,用戶可自行決定設備共享位置數(shù)據(jù)的時段,同時防止應用獲取不必要的位置信息咧虎。當應用請求訪問權限時卓缰,屏幕會彈出如圖所示的對話框,向用戶顯示新的權限選項砰诵。用戶可點擊設置 → 位置信息 → 應用權限征唬,隨時更改應用的訪問權限。
輕松上手
我們深知這些變更可能會對您的應用造成影響茁彭。我們十分尊重開發(fā)者社區(qū)总寒,而我們的目標是謹慎對待所有此類變更,因此理肺,我們會從以下兩方面入手摄闸,助力各位開發(fā)者應對新的位置管理:?
1. 在首個 Q Beta 版本中推出對開發(fā)者有影響的特性,給您預留充足時間對應用進行必要更新妹萨。
2. 陸續(xù)發(fā)布更多學習資源年枕,如開發(fā)者博客、開發(fā)者指南和隱私清單乎完,為您提供更多細節(jié)內(nèi)容熏兄。
如果您對這些學習資源有任何改進建議,歡迎隨時向我們反饋树姨!
如果應用的目標平臺 (targetSdkVersion) 為 Android Q 且包含需要 "始終" 訪問設備當前位置的功能摩桶,請您在清單文件中添加新的?ACCESS_BACKGROUND_LOCATION?權限。如果應用的目標平臺是 Android 9 (API 等級 28) 或更低版本系統(tǒng)帽揪,當您請求?ACCESS_FINE_LOCATION?或?ACCESS_COARSE_LOCATION?時典格,系統(tǒng)會自動為應用添加?ACCESS_BACKGROUND_LOCATION?權限。為了維持良好的用戶體驗台丛,請您仔細設計應用耍缴,確保應用妥善處理權限受限的情況砾肺,即無法從后臺訪問設備位置或完全無法獲取位置信息。
如果用戶知道應用需要相應權限的原因防嗡,他們會更容易接受權限請求变汪。另外,對于需要授予權限才能使用的功能蚁趁,請您務必結合具體場景裙盾,選擇恰當?shù)恼埱髸r機: 當用戶啟用該功能或與之發(fā)生交互時,如正在搜索附近內(nèi)容他嫡,再發(fā)起請求番官。最后,其您避免請求過多權限钢属,也就是說徘熔,如果應用中的某項功能只需要 "使用期間" 權限,那就沒必要請求 "始終允許" 權限淆党。
點擊這里了解更多有關位置控制的精彩內(nèi)容