在模拟器中而不是在设备中更新位置

Posted

技术标签:

【中文标题】在模拟器中而不是在设备中更新位置【英文标题】:location updating in simulator but not in device 【发布时间】:2015-02-02 13:55:51 【问题描述】:

我正在尝试通过使用核心位置框架来获取用户的更新位置。它在模拟器中工作,但在 ipad/iphone 中不工作。我正在使用以下代码来获取它。在模拟器中,我使用的是高速公路。

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


 CLLocation *currentLocation=newLocation;
 NSLog(@"location : %@",currentLocation);

if(currentLocation !=nil)

 self.latitudelabel.text = [NSString 
 stringWithFormat:@"%.8f",currentLocation.coordinate.latitude];
 self.longitudelabel.text = [NSString  
 stringWithFormat:@"%.8f",currentLocation.coordinate.longitude];


CLLocationDistance distance = [newLocation distanceFromLocation:oldLocation];

NSLog(@"Calc.distance%f",distance);

[geocoder reverseGeocodeLocation:currentLocation completionHandler:^
(NSArray   *placemarks, NSError *error)


 if(error == nil && [placemarks count]>0)
 
     placemark = [placemarks lastObject];
     NSLog(@"Country %@",placemark.country);
     NSLog(@"Area %@",placemark.administrativeArea);
     NSLog(@"City %@",placemark.locality);
     NSLog(@"Code %@",placemark.postalCode);
     NSLog(@"Road %@",placemark.thoroughfare);
     NSLog(@"Number %@",placemark.subThoroughfare);

     self.addresslabel.text = [NSString stringWithFormat:@"%@ %@ 
\n %@ %@    \n %@ \n %@",
 placemark.subThoroughfare,    placemark.thoroughfare,
                          placemark.postalCode, placemark.locality,
                          placemark.administrativeArea,
                          placemark.country];

 
 else
 
     NSLog(@"tktk%@",error.debugDescription);

 
];


【问题讨论】:

你有什么设备?设备中的 ios 版本是什么? iOS 8? 我有 iPad,版本是 iOS 8.1 【参考方案1】:

进入settings > Privacy > Location services > Your app > Always.

您还可以查看以下问题Core Location not working in iOS 8中发布的其他替代方法

【讨论】:

以上是关于在模拟器中而不是在设备中更新位置的主要内容,如果未能解决你的问题,请参考以下文章

保存数据 - 在模拟器上工作,而不是在设备上工作

UITextView:链接检测在模拟器中工作,而不是在设备上

iOS App 在模拟器上运行而不是在设备上运行?

facebook在模拟器上工作而不是在设备上

React Native 0.44 PushNotifcationIOS.scheduleLocalNotification 在模拟器中处理 JavaScript Date 对象,而不是在设备上

iPad应用程序仅在设备上而不是在模拟器中加载笔尖时崩溃