【问题标题】:iphone - Using the Device motion instead of Accelerometer, Gyroscope and Magnetometeriphone - 使用设备运动而不是加速度计、陀螺仪和磁力计
【发布时间】:2011-10-16 12:28:51
【问题描述】:

如果我在 iOS4 上,不使用特定的处理程序,并且需要相同的更新间隔,使用设备运动而不是特定的加速度计、陀螺仪和磁力计更新有什么区别?

如果我使用设备动作,这 3 个功能之一在设备上不可用会怎样?

我的意思是,如果其中一项功能不可用,会返回什么 deviceMotionAvailable ?

【问题讨论】:

    标签: iphone ios cocoa-touch accelerometer gyroscope


    【解决方案1】:

    在 iOS 4 中,磁力计尚未包含在设备运动 API 中,而是由 CLLocationManager 处理(这在 iOS 5 中发生了变化)。因此,如果您有陀螺仪和加速度计,deviceMotioAvailable 将返回true,与磁力计无关。另一方面,如果陀螺仪丢失,您将始终得到false,您需要留在accelerometerData

    由于 Device Motion 对两个传感器都有一个时间戳,因此您将获得两个传感器的可靠插值。否则 Device Motion 将无法进行传感器融合,这是首选方式的主要优势。

    您不能依赖 CLLocationManager 的固定频率。 didUpdateHeading 每当系统“认为”它应该被调用时就会被调用。要标准化 CLLocationManager 和 CMDeviceMotion 之间的不同时间坐标,您可以查看NSTimeInterval to unix timestamp

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-04-27
      • 2011-07-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多