如何在iphone中获取当前位置的纬度经度?

Posted

技术标签:

【中文标题】如何在iphone中获取当前位置的纬度经度?【英文标题】:How to get current location latitude longitude in iphone? 【发布时间】:2013-12-10 13:09:49 【问题描述】:

我想获取我当前的位置 lat long 为此我已经编写了一些代码但我得到了错误的位置的 lat long 这是我的代码。

locationManager = [[CLLocationManager alloc] init];
locationManager.distanceFilter = kCLDistanceFilterNone; 
locationManager.desiredAccuracy = kCLLocationAccuracyHundredMeters;
[locationManager startUpdatingLocation];
float latitude = locationManager.location.coordinate.latitude;
float longitude = locationManager.location.coordinate.longitude;

【问题讨论】:

在模拟器上测试?检查模拟器位置 初始化 CLLocationManager 后无法立即获取位置。这是一个异步过程,可能需要一些时间。不过,您可以使用它的委托协议(正如某人已经建议的那样)。 如何查看模拟器位置? 在模拟器菜单Debug->Location更改位置 【参考方案1】:

要获取当前位置,请编写以下代码:

locationManager = [[CLLocationManager alloc] init];
locationManager.delegate=self;
locationManager.desiredAccuracy=kCLLocationAccuracyBest;
locationManager.distanceFilter=kCLDistanceFilterNone;

[locationManager startUpdatingLocation];

然后实现委托方法:

// CLLocationManagerDelegate

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

    // Handle location updates
 

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

    // Handle error

【讨论】:

【参考方案2】:
    正确设置委托:[locationManager setDelegate:self] 实现正确的委托方法locationManager:didUpdateLocations: 读出位置数组。数组中的最后一项是最近找到的位置。

【讨论】:

以上是关于如何在iphone中获取当前位置的纬度经度?的主要内容,如果未能解决你的问题,请参考以下文章

如何从纬度/经度获取附近的位置?

如果应用程序在后台运行,如何获取当前位置的纬度和经度?

Android:如何获取经度和纬度的当前位置?

来自给定纬度和经度 iphone 的短句

如何获取当前位置并将纬度和经度作为字符串?

如何获取android移动设备的当前位置经纬度?