iOS開(kāi)發(fā)請(qǐng)求定位權(quán)限總結(jié)

  1. iOS7以前
    系統(tǒng)配置之后出現(xiàn):永不、始終 選項(xiàng)
  2. iOS8-10
    系統(tǒng)配置之后出現(xiàn):永不、始終 選項(xiàng)
    通過(guò)配置 NSLocationWhenInUseUsageDescription 可出現(xiàn) 使用應(yīng)用期間 選項(xiàng)
  3. iOS11+
    不用配置NSLocationAlwaysUsageDescription,就會(huì)出現(xiàn)永不、始終、使用應(yīng)用期間 選項(xiàng)
  4. iOS13
    1.增加 允許一次 選項(xiàng)
    用戶選擇 Allow Once
    iOS 13 提出了 Temporary authorization 的概念。當(dāng)用戶選擇 Allow Once 后,我們的 App 就獲得了 Temporary authorization ,也就是臨時(shí)權(quán)限。該權(quán)限有以下特點(diǎn):
    1.實(shí)際的權(quán)限類型是:WhenInUse;
  5. App 重啟后,定位權(quán)限會(huì)重新變成 NotDetermined,下次開(kāi)啟定位時(shí)再申請(qǐng)定位權(quán)限會(huì)重新彈框讓用戶確認(rèn);
    2.在 iOS 13 系統(tǒng),申請(qǐng) WhenInUse 或 Always 權(quán)限時(shí),系統(tǒng)都會(huì)先彈出來(lái)下面的彈框讓用戶選擇:
    "使用app時(shí)允許、允許一次、不允許"
    用戶選擇 Allow While In Use
    如果用戶選擇 Allow While In Use ,我們的 App 會(huì)獲得 WhenInUse 權(quán)限。
    如果之前申請(qǐng)的是 WhenInUse 權(quán)限,那么就跟 iOS 13 之前版本的系統(tǒng)表現(xiàn)沒(méi)什么區(qū)別;
    系統(tǒng)會(huì)在某個(gè)時(shí)間再?gòu)棾鲆粋€(gè)彈框詢問(wèn)用戶是繼續(xù)給我們的 App WhenInUse 權(quán)限,還是切換成 Always 權(quán)限,iOS 13 中,沒(méi)法直接向用戶要 Always 權(quán)限了,必須要經(jīng)過(guò)一個(gè)二次確認(rèn)。

備注:系統(tǒng)確認(rèn)彈窗彈出時(shí),為打斷狀態(tài)(UIApplicationStateInactive)。

參考資料:
http://www.itdecent.cn/p/39e6d61b256c
http://foogry.wang/2019/09/18/2019-09-18-ios-ding-wei-quan-xian-na-xie-shi/

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容