iOS8 下定位 (CLLocationManager) 的改變

2014/09/21
~ 阿亮 ~

今天 iOS8 下測試下一班高鐵v1.8.1 、下一班火車v1.2.1 ,發現定位的寫法也不一樣了…. >”< 舊的 CLLocationManager 寫法,在新安裝的 App 會出現定位不會被詢問的情形。

0921_002 

如上圖所示,原本 Xcode5.1.1 的定位,若沒有變更程式碼,用 Xcode6 去編繹,安裝後的 App 會發現在「隱私權」>「定位服務」下的應用程式呈現沒有設定(如圖 1.),新裝的 App 也不會因為 CLLocationManager startUpdatingLocation 詢問定位的權限了

在 iOS8 下,它改由 requestWhenInUseAuthorization 來詢問權限

if (nil == locationManager)
{
     locationManager = [[CLLocationManager alloc] init];
}
    
if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 8.0)
    [locationManager requestWhenInUseAuthorization];

另外,要在 info.plist 設定詢問權限時的字串 NSLocationWhenInUseUsageDescription

0921_001

這樣在詢問的對話框就會出現上面設定的字串了

0921_003

上面定位有問題的情形倒是在以下情形是不會發生的

  1. 原本 iOS7 就安裝的App,升級到  iOS8,因為原本定位設定儲存了,不會有問題
  2. 在 iOS8 下,安裝 Xcode5.1.1 編繹出來的 App


3 Responses to “iOS8 下定位 (CLLocationManager) 的改變”

  • Alston 說:

    Thanks for sharing!

  • 阿叶 說:

    谢谢博主,以前都用iOS7测的,换了8之后也没试过定位,今天一用 !!昏頭!!
    问题解决了,太好了 !!放炮!!

  • 微尘 說:

    谢谢博主,解决大问题了。。。。真心被折腾了三四天了,原来答案在这里 !!爽!!
    博主请收下我的膝盖~~~ Orz

站內搜尋



本站其他服務

本站其他軟體



  • 油價快訊App (OilPrices)

    依據油價及匯率,估算台灣下週油價,另外提供三週、一年以及三年的歷史變化,以及週末下午推播通知最新油價預估或公告。


  • 國道一路通(FreeWay)

    打開定位即實際地圖上繪製所在地中心附近的車況圖,可縮放地圖,不再是小小的縮小圖,快速了解高速公路的路況。


  • 台灣匯率快算

    提供全球 150 種以上貨幣即時換算,以及各種匯率歷史變化圖。


  • 條碼掃描器(QRCode)

    支援 QRCode and Barcodes、可連續快速掃描、自動對焦、可打開手電筒供掃描時使用


  • 批踢踢快訊 (pttNews)

    身為鄉民的您,是不是常常覺得現在的批踢踢 (PTT) 閱讀器,明明您就只要看幾個板,都幫您分類好,但不是您要的?甚至您只想關注某個人(或某件事)的消息,卻散布在不同東西,找出來很辛苦? 這個 App 可以解決您這些問題,快來用吧!


  • 股海快訊 (iNews123)

    提供特定個股新聞更新推播、股價警示推播、新聞社群分享以及每日個股收盤價等功能的股票App/股市App.