CoreLocation的各系统适配问题

iOS 8

如果需要在iOS中始终使用定位和在当使用应用的时候使用定位,需要在plist文件中添加

iOS 8 缺失的文件

NSLocationAlwaysUsageDescription

NSLocationWhenInUseUsageDescription

这两个字段没什么特别的意思,就是自定义提示用户授权使用地理定位功能时的提示语。

iOS 9

设置plist文件

iOS 9 缺失的plist文件

代码

ViewDidLoad中设置CLLocationManager实例的属性

        locationManager.delegate = self
        locationManager.desiredAccuracy = kCLLocationAccuracyBest
        
        //在应用使用时,使用定位
        locationManager.requestWhenInUseAuthorization()
        if #available(iOS 9.0, *) {
            locationManager.allowsBackgroundLocationUpdates = true
        } else {
        //设置不是iOS 9.0 的情况
          locationManager.requestAlwaysAuthorization()
        }
        //更新用户位置
        locationManager.startUpdatingLocation()

然后实现代理CLLocationManagerDelegate中的方法

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容