我正在嘗試在我的應用程序中獲取我的位置的海拔高度。但每次我嘗試altitude
CLLocation
對象的屬性,我得到0.00
作爲結果。在iPhone SDK中獲取我的位置的海拔高度(海拔高度)
我爲我的查詢搜索了一下,我收到了類似的問題here和here。這個鏈接是說,如果我使用wifi或手機信號塔訪問CLLocation,它將爲空。即使我試圖設置desireAccuracy
最好,即使它不確定該應用程序將使用GPS。這也是說,如果我在室內,我將無法訪問GPS。
我很多情況下它不確定應用程序將只使用GPS。我想要一些從wifi或手機塔獲取高度的方法。爲此,我搜索了更多,我得到Google Earth API,但我認爲這僅適用於Microsoft .net技術。
現在根據這種情況,我認爲對於一個解決方案,我可以在Microsoft技術中創建一個Web服務,並將我的位置傳遞到那裏,我可以獲得高度作爲響應,但我不想這樣做。
任何人都可以建議我如何從ios獲取我的位置的高度。有沒有方法可用?如果是,請在正確的方向導航我。
在此先感謝。
EDIT1
我用CLLocationManager
更新的位置,當我把我的位置,我需要的高度。
EDIT2
據@ fishinear的回答我嘗試下面的代碼:
- (void)viewDidLoad
{
[super viewDidLoad];
manager = [[CLLocationManager alloc] init];
[manager setDesiredAccuracy:kCLLocationAccuracyBestForNavigation];
[manager setDistanceFilter:kCLDistanceFilterNone];
[manager setDelegate:self];
[manager startUpdatingLocation];
// Do any additional setup after loading the view, typically from a nib.
}
- (void)locationManager:(CLLocationManager *)manager didUpdateToLocation:(CLLocation *)newLocation fromLocation:(CLLocation *)oldLocation {
if ([newLocation verticalAccuracy] >= 0) {
NSLog(@"Altitude = %lf",newLocation.altitude);
}
NSLog(@"Vertical Accuracy : %lf",newLocation.verticalAccuracy);
}
verticalAccuracy
總是-1
。即使運行應用程序持續30分鐘,它也不會改變。我在我的3GS上運行ios 4.3.2。我在室內,所以我認爲它甚至不使用此代碼訪問GPS。
我試過使用這個URL,並且我分別傳遞了x和y值'22.998851594142938'&'72.5317382812553173828125',響應是' -1.79769313486231E + 308 '。我對此有所瞭解?如何獲得這個高度? –
謝謝。你編輯的答案幫助:) https://developers.google.com/maps/documentation/javascript/elevation這是我正在尋找的。 –