获取高度、方位、速度和 GPS 精度

Posted

技术标签:

【中文标题】获取高度、方位、速度和 GPS 精度【英文标题】:Get Altitude, Bearing, speed and GPS Accuracy 【发布时间】:2013-12-13 04:22:41 【问题描述】:

大家好,我需要在我的 iPhone 应用中查找高度、方位和 gps 精度。我已经在我的 android 应用程序上完成了这项工作。在android中,我是这样做的:

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 模拟器上测试它时,我得到了这个结果。 谢谢。

问候。

【问题讨论】:

【参考方案1】:

模拟器不是测试核心位置的好地方。它仅模拟特定位置,但如果您想测试速度、方位等,最好在真实设备上尝试。

您需要使用类CLLocationManager (Apple doc) 并使用可用的委托协议获取数据。例如,如果你想要标题,你可以实现 locationManager:didUpdateHeading: 方法并在位置管理器上调用 startUpdatingHeading 方法。

【讨论】:

mmmm 因为我使用的是模拟器。好的@Rick 我会尝试使用真实设备。谢谢你的回答。 谢谢。如果它仍然不起作用,请随时返回,否则,请考虑将我的答案标记为已接受:)

以上是关于获取高度、方位、速度和 GPS 精度的主要内容,如果未能解决你的问题,请参考以下文章

CLLocation高度属性在飞行中的有效性

BetaFlight深入传感设计之七:GPS&Baro高度数据融合

我可以得到纬度和经度,但我无法在 SWIFT 中访问 GPS 高度信息

核心定位和辅助 GPS iPhone

测绘中的RTK和GPS有啥区别?

在 iOS 中获取用户当前的速度和高度