我正在尝试使用位置管理器查找用户的当前位置。下面是我在viewdidload中的代码
locationManager = [[CLLocationManager alloc] init];
locationManager.delegate = self;
//locationManager.distanceFilter = kCLDistanceFilterNone;
locationManager.desiredAccuracy = kCLLocationAccuracyBest;
if(IS_OS_8_OR_LATER)
{
[locationManager requestWhenInUseAuthorization];
[locationManager requestAlwaysAuthorization];
}
[locationManager startUpdatingLocation];
和didUpdateLocations
self.userLocation = locations.lastObject;
if (userLocation != nil)
{
NSLog(@"sdsd %f %f", userLocation.coordinate.longitude, userLocation.coordinate.latitude);
[locationManager stopUpdatingLocation];
}
在模拟中设置确认对话框和用户位置,但即使在设备中也不是实时位置。我在设备和xcode中配置了所有设置,但仍然只获得默认位置。
请告诉我如何获取实时位置而不是模拟位置?
答案 0 :(得分:1)
模拟器未从操作系统接收您当前的位置。要进行调试,您可以在模拟器中选择Debug->Location->City Bicycle Ride
。这将模拟围绕街区骑自行车。
在设备上,如果你在室内,可能需要一段时间才能获得当前位置。打开蓝牙和WIFI可以帮助iOS获得更快的位置。
答案 1 :(得分:0)
打开xCode
转到Product-> Scheme-> Edit
方案,然后在Run
内选择Core location
并查看Allow location simulation
。可能会有用。