Xcode 6 GM - CLLocationManager

China☆狼群 提交于 2019-11-26 14:39:14

问题


I have a project made using Xcode 5. I have a ViewController where i take the phone location using a CLLocationManager. I have implemented both:

-(void)locationManager:(CLLocationManager *)manager didUpdateLocations:(NSArray *)locations
-(void)locationManager:(CLLocationManager *)manager didFailWithError:(NSError *)error

which worked great.

Now i opened the project with Xcode 6 GM, and neither of these 2 methods where called (not on simulator, or device).

Any ideas? Thanks


回答1:


Please check the thread here

You have to take care of two things

1.

  • requestAlwaysAuthorization - for background location

    [self.locationManager requestWhenInUseAuthorization];or

  • requestWhenInUseAuthorization-location only when app is active

    [self.locationManager requestAlwaysAuthorization];

If you do not make either of two request , iOS will ignore startUpdateLocation request.

2. Include NSLocationAlwaysUsageDescription or NSLocationWhenInUseUsageDescription key in Info.plist depending upon which permission you are asking for. This string will be diaplayed by iOS to user so the user can get excat idea why does our app needs permission.

Hope this helps.



来源:https://stackoverflow.com/questions/25844430/xcode-6-gm-cllocationmanager

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!