【发布时间】:2016-05-31 06:12:01
【问题描述】:
我正在使用 Core Motion Framework 来检测设备活动。
即步行、跑步、汽车、静止
主要问题是我能够非常准确地检测步行和跑步,但我的设备无法检测到汽车模式。
这是我的代码
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)
})
}
【问题讨论】:
-
您确定您的手机处于汽车模式吗? (可能它只是没有检测到它)
-
是的,我在开车的时候试过了。它显示静止或行走。
-
仅仅因为你在开车,并不意味着手机能正确检测到这一点。如果手机正确检测到它,您是否与另一个应用程序进行了交叉检查?
-
是的,我已经尝试了很多来自 git 的库,例如 github.com/AmbientStatus/AmbientStatus
-
我的主要目标是仅使用硬件检测驾驶模式,而不是使用定位服务来解决电池消耗问题。
标签: ios iphone xcode xcode7 core-motion