【发布时间】:2014-07-12 18:47:55
【问题描述】:
在 iOS 中使用核心位置框架尝试了不同的方法,但没有通过 GPS 获得准确的位置。即使是苹果地图和谷歌地图也没有指向正确的位置。查看我正在使用的代码 sn-p:
MyLocation 类头文件
#import <Foundation/Foundation.h>
#import <CoreLocation/CoreLocation.h>
@interface MyLocation : NSObject<CLLocationManagerDelegate> {
CLLocationManager *locationManager;
}
MyLocation 类 m 文件
#import "MyLocation.h"
#import <CoreTelephony/CTCarrier.h>
#import <CoreTelephony/CTTelephonyNetworkInfo.h>
@implementation MyLocation
@synthesize curLocation;
-(id)init{
locationManager = [[CLLocationManager alloc] init];
locationManager.delegate = self;
locationManager.desiredAccuracy = kCLLocationAccuracyNearestTenMeters;
locationManager.distanceFilter = 0;
//locationManager.distanceFilter = kCLDistanceFilterNone;
//locationManager.desiredAccuracy = kCLLocationAccuracyBest;
[self updateLocation];
curLocation = CGPointZero;
return self;
}
-(void)updateLocation{
[locationManager startUpdatingLocation];
}
- (void)locationManager:(CLLocationManager *)manager didUpdateToLocation:(CLLocation *)newLocation fromLocation:(CLLocation *)oldLocation {
curLocation = CGPointMake( newLocation.coordinate.latitude, newLocation.coordinate.longitude);
}
【问题讨论】:
-
如果 Apple Maps 和 Google Maps 都显示错误的位置,那么我猜您的应用程序也会如此。但是,如果您想要超级精确,则不应使用 kCLLocationAccuracyNearestTenMeters。使用 kCLLocationAccuracyBest 或 kCLLocationAccuracyBestForNavigation,但它们会消耗更多电池。一般来说,GPS 足够准确,但不是很准确。
-
请在设备上测试
-
我也面临这个问题。我也尝试过使用 kCLLocationAccuracyBestForNavigation 但没有成功。我已经在多台设备上进行了测试,有时它会得到准确的结果,但大多不准确。
-
查看我在本帖其他地方的回复。在过去的几天里,我刚刚遇到了这个问题。不是你。是设备。
-
嗨@Brave Heart 你解决了这个问题吗?我面临同样的问题。但我无法修复它。如果你解决了这个问题,你能帮我吗?提前谢谢。
标签: ios iphone objective-c gps location