CMMotionActivityManager 无法检测到汽车模式
CMMotionActivityManager is unable to detect Automotive mode
我正在使用 Core Motion Framework 检测设备 activity。
即步行,运行,汽车,静止
主要问题是我能够检测到步行并且 运行 非常准确,但我的设备无法检测到汽车模式。
这是我的代码
var motionActivityManager: CMMotionActivityManager?
if CMMotionActivityManager.isActivityAvailable() {
motionActivityManager?.startActivityUpdatesToQueue(NSOperationQueue.currentQueue()!, withHandler: {
activityData
in
if activityData!.walking == true {
self.lblActivityStatus?.text = "Walking"
} else if activityData!.running == true {
self.lblActivityStatus?.text = "Running"
} else if activityData!.automotive == true {
self.lblActivityStatus?.text = "Automotive"
} else if activityData!.stationary == true {
self.lblActivityStatus?.text = "Stationary"
}
print("Activity Data: ", activityData)
})
}
通过在多个设备上测试同一个应用程序,我终于得到了答案。
第一代设备上的 m7 芯片在特定 "Automotive" 模式下无法正常工作。
当我在 5s 和 ipad air 上测试时,它没有检测到它应该检测到的汽车模式。但是用 iphone 6 Plus 测试同一个应用程序,它运行良好。
所以问题出在设备上,而不是框架上。
我正在使用 Core Motion Framework 检测设备 activity。
即步行,运行,汽车,静止
主要问题是我能够检测到步行并且 运行 非常准确,但我的设备无法检测到汽车模式。
这是我的代码
var motionActivityManager: CMMotionActivityManager?
if CMMotionActivityManager.isActivityAvailable() {
motionActivityManager?.startActivityUpdatesToQueue(NSOperationQueue.currentQueue()!, withHandler: {
activityData
in
if activityData!.walking == true {
self.lblActivityStatus?.text = "Walking"
} else if activityData!.running == true {
self.lblActivityStatus?.text = "Running"
} else if activityData!.automotive == true {
self.lblActivityStatus?.text = "Automotive"
} else if activityData!.stationary == true {
self.lblActivityStatus?.text = "Stationary"
}
print("Activity Data: ", activityData)
})
}
通过在多个设备上测试同一个应用程序,我终于得到了答案。 第一代设备上的 m7 芯片在特定 "Automotive" 模式下无法正常工作。 当我在 5s 和 ipad air 上测试时,它没有检测到它应该检测到的汽车模式。但是用 iphone 6 Plus 测试同一个应用程序,它运行良好。 所以问题出在设备上,而不是框架上。