标签:定位 CoreLocation IOS locationManager func print Swift currentLocation
1、配置Custom IOS Target Prpperties文件
2、导入CoreLocation.framework
3、使用步骤 在使用的swift文件的开始导入头文件->" import CoreLocation"
示例代码:
import CoreLocation //导入定位核心库
class ViewController: UIViewController ,CLLocationManagerDelegate{ //遵守定位代理,以获取定位结果。
let locationManager = CLLocationManager()
var currentLocation:CLLocation!
var lock = NSLock()
override func viewDidLoad() {
super.viewDidLoad()
locationManager.delegate = self
locationManager.desiredAccuracy = kCLLocationAccuracyBest //定位精确度(最高)一般有电源接入,比较耗电
//kCLLocationAccuracyNearestTenMeters; //精确到10米
locationManager.distanceFilter = 50
//设备移动后获得定位的最小距离(适合用来采集运动的定位)
locationManager.requestWhenInUseAuthorization() //弹出用户授权对话框,使用程序期间授权(ios8后)
//requestAlwaysAuthorization; //始终授权
locationManager.startUpdatingLocation()
print("开始定位 。。。")
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
/**
* CLlocationDelegate
*/
//委托传回定位,获取最后一个
func locationManager(manager: CLLocationManager, didUpdateLocations locations: [CLLocation]) {
lock.lock()
currentLocation = locations.last
//注意:获取集合中最后一个位置(最新的位置)
print("定位经纬度为:\(currentLocation.coordinate.latitude)")
//一直发生定位错误输出结果为0:原因是我输出的是currentLocation.altitude(表示高度的)而不是currentLoction.coordinate.latitude(这个才是纬度)
print(currentLocation.coordinate.longitude)
lock.unlock()
}
func locationManager(manager: CLLocationManager, didFailWithError error: NSError) {
print("定位出错拉!!\(error)")
}
参考资料网页:
1、使用CoreLocation进行定位(Swift版)
https://blog.csdn.net/qq_14920635/article/details/52400868
2、iOS11及以上操作系统无法定位问题完美解决方案
https://blog.csdn.net/jia12216/article/details/81316479
3、如果将经纬度转换成城市名称,需要导入MapKit.framework
https://www.cnblogs.com/lwk151124/p/5936359.html
标签:定位,CoreLocation,IOS,locationManager,func,print,Swift,currentLocation 来源: https://blog.csdn.net/Kariswei/article/details/119109893
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。