2012-09-06 11 views
1

iPhone에서 사용자 위치를 찾아야합니다. CLLocation Manager을 사용하여 사용자의 현재 위치를 찾을 수 있습니다. 그러나 내가 얻는 위치는 내 물리적 장치 위치에 정확하지 않습니다. 나는 정확성을 설정하기 위해 다음과 같은 기준을 사용했다정확도가 iOS5 인 사용자 위치를 찾는 방법

locationManager.desiredAccuracy = kCLLocationAccuracyBest; 
    locationManager.delegate = self; 
    locationManager.distanceFilter = 10; 
    [locationManager startMonitoringSignificantLocationChanges]; 
    [locationManager release]; 

내가하려고하면 인쇄 "newLocation.verticalAccuracy"및 locationManager:didUpdateToLocation:fromLocation 내부 "newLocation.horizontalAccuracy"방법, 내가 주위 10.0000 수평 정확도와 12.00000 무엇입니까 대부분의 시간 수직 정확도.

그래서 더 정확한 정확도로 사용자 위치를 찾는 다른 방법이 있습니까? 아니면 설정이 누락 되었습니까? 도와주세요.

FYI : 더 나은 결과를 위해 개방 된 장소에서 WiFi 및 테스트를 사용 중입니다.

답변

1

모습이 링크

LocateMe 샘플 데모 프로젝트

또는이

가 초기화에 .H 파일

#import <UIKit/UIKit.h> 
#import <CoreLocation/CoreLocation.h> 

@interface yourController : UIViewController <CLLocationManagerDelegate> { 
    CLLocationManager *locationManager; 
} 

@end 

와하는 .m 파일

에 넣어 사용 방법

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

이 기능을 사용... 정보에 대한

- (void)locationManager:(CLLocationManager *)manager didUpdateToLocation:(CLLocation *)newLocation fromLocation:(CLLocation *)oldLocation { 
    NSLog(@"OldLocation %f %f", oldLocation.coordinate.latitude, oldLocation.coordinate.longitude); 
    NSLog(@"NewLocation %f %f", newLocation.coordinate.latitude, newLocation.coordinate.longitude); 
} 
+0

감사합니다. 동일한 기능을 사용하고 있지만 실제 위치가 정확하지 않습니다. 누구나 CLLocation이 얼마나 정확한지 말해 줄 수 있습니까? 그리고 그것은 위치에 달려 있습니까? –

관련 문제