public void onLocationChanged(Location location) {
if (isBetterLocation(location, lastValidLocation)
&& isEnable) {
lastValidLocation = location;
longitude = location.getLongitude();
latitude = location.getLatitude();
altitude = location.getAltitude();
speed = location.getSpeed();
accuracy = location.getAccuracy();
bearing = location.getBearing();
locationProvider = location.getProvider();
onPositionChanged(
LocationService.this,
new GeoPoint(location.getLongitude(), location
.getLatitude()));
}
}
我怎么能在iOS中做同样的事情? 我试图从CLLocation获取它,但它返回null / 0,0000 / -1.0000 .. 顺便说一句,我在iOS模拟器上测试时得到这个结果。 感谢。
问候。
答案 0 :(得分:1)
模拟器不是测试核心位置内容的好地方。它只模拟一个特定的位置,但如果你想测试速度,轴承等,你最好尝试一个真实的设备。
您需要使用类CLLocationManager
(Apple doc)并使用可用的委托协议获取数据。例如,如果您希望标题实现方法locationManager:didUpdateHeading:
并在位置管理器上调用方法startUpdatingHeading
。