Onelong

分享知识,与你一起进步......
RSS icon Home icon
  • ios 后台定位

    post by onelong / 2015-7-5 0:36 Sunday [apple]

    最近的项目要到后台定位,看遍了网上的demo,不是这个,就是那个有点问题。apple文档上面写得很简单,作为新手,很麻烦。iOS开发越来越简化了,隐藏了太多细节了。

    首选在plist上面声明 App registers for location updates 

    iOS8上面还要添加下面的声明

    NSLocationAlwaysUsageDescription

    NSLocationWhenInUseDescription

    然后就是写代码了

     locationManager = [[CLLocationManager alloc] init];

        locationManager.delegate = self;

        locationManager.desiredAccuracy = kCLLocationAccuracyBest;

        locationManager.distanceFilter = 50; //这个很重要,不设置距离,不会更新的。我当时就卡再这里

        locationManager.pausesLocationUpdatesAutomatically = NO;//听说后台模式需要设置这个

        

        //ios 8.0下要授权

        if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 8.0)

        {

            [locationManager requestWhenInUseAuthorization];

            [locationManager requestAlwaysAuthorization];

        }

     

        [locationManager startUpdatingLocation];//标准模式

    要做什么,直接在监听里面处理就好了。

     

    -(void) locationManager:(CLLocationManager *)manager didUpdateToLocation:(CLLocation *)newLocation fromLocation:(CLLocation *)oldLocation{}

    测试过百度地图的定位,似乎不支持后台定位,最后放弃了。

    还有startMonitoringSignificantLocationChanges,这个只能在Wi-Fi下面有效,很多人的demo并没有说明,让初学者走了很多弯路。

    标签: ios
    引用地址:
     

    我要评论