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) 的改變”

歡迎留言

敝站會審核留言的適宜性,您的留言可能會較晚發佈,而且小弟保留刪除的權利!!

站內搜尋



本站其他服務

本站其他軟體



  • 照片去背(PhotoEraser)

    一款方便移除背景的工具,產生透明背景圖可以存回原本相簿,也可分享到其他 App 使用.


  • 下一班火車 (nextRail)

    這個 app 只要開啟後,就根據定位幫你過濾出最近火車站的時刻表,不用再按任何按鈕了,方便您在很快時間內確定要坐的哪一班火車


  • 條碼掃描器(QRCode)

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


  • 當令蔬果花卉(AgriInfo)

    是不是常常在超市看到水果蔬菜的價格,總是不確定是當季蔬果?這個服務就是幫你很快判斷眼前的蔬果花卉的價格是否便宜。


  • 下一班公車(nextBus)

    這個 app 只要開啟後,就根據定位幫你過濾出附近站牌的時刻表,以及提供相關公車預計到站的時間,方便您在很快時間內確定要坐的哪一班公車


  • 台灣匯率快算

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