Core Motion与持久存储技术解析
1. Core Motion使用要点
1.1 Core Motion使用注意事项
在使用Core Motion时,有以下几点需要注意:
- 应用应仅创建一个 CMMotionManager
实例。
- Core Motion需要开启各种传感器,如磁力计和陀螺仪,这会增加电池消耗。因此,尽量避免使用不必要的传感器,并在不需要更新时及时停止。
- 应用在后台运行时可以合法使用Core Motion,但需要有其他后台运行的理由,因为 Info.plist
中没有Core Motion的 UIBackgroundModes
设置。例如,若使用了Core Location,可借此同时使用Core Motion。
- 若应用不在后台运行,当应用进入后台时,应明确告知运动管理器停止生成更新。
1.2 Core Motion其他数据类型
除了 CMDeviceMotion
,Core Motion框架还能获取以下四种其他类型的数据:
| 数据类型 | 功能 | 使用步骤 |
| ---- | ---- | ---- |
| CMMotionActivityManager
| 部分设备有运动协处理器芯片,能检测、分析和记录设备运动,即使设备休眠且耗电量极低。可分析用户携带或佩戴设备时的活动情况,但不涉及位置确定。 | 1. 维护一个 CMMotionActivityManager
实