工程配置与说明
引入系统库文件
需要引入的系统库文件包括如下:
CoreLocation.framework
SystemConfiguration.framework
Security.framework
libsqlite3.0.tbd(xcode7以前为 libsqlite3.0.dylib)
CoreTelephony.framework
libc++.tbd(因需适配iOS12,需要将libstdc++.6.0.9.tbd 更新为libc++.tbd)
AdSupport.framework
在 TARGETS->General->Linked Frameworks and Libraries 中点击“+”,依次查找上述文件,添加到工程中,完成系统库文件的引入操作。
申请权限
在项目的 Info.plist 添加定位权限申请,根据您的实际业务需求,选择如下方式设置:
NSLocationWhenInUseUsageDescription:表示应用在前台的时候可以搜到更新的位置信息;
NSLocationAlwaysUsageDescription:表示应用在前台和后台(suspend 或 terminated)都可以获取到更新的位置数据;
NSLocationAlwaysAndWhenInUseUsageDescription:申请永久定位权限,以便应用在前台和后台都可以获取位置数据;
注意:iOS 11在定位权限设置方面做了更新,定位设置参考如下:
如果您需要在使用期间定位的话,请设置如下:
在Info.plist里配置NSLocationWhenInUseUsageDescription,NSLocationAlwaysAndWhenInUseUsageDescription两项;
如果您需求永久定位的话,请设置如下:
在Info.plist里配置NSLocationWhenInUseUsageDescription,NSLocationAlwaysUsageDescription,NSLocationAlwaysAndWhenInUseUsageDescription三项;
在项目的Info.plist 添加App Transport Security Settings字段,并做相关设置如下: