2017-05-07 41 views
0

在手腕關閉後,屏幕關閉時,似乎無法在WatchOS上獲取實時加速度計數據。從Apple CM的電池保養時間後,從CMMotionManager獲取數據將停止。當屏幕關閉時,觀察OS3無法獲得加速度計數據

您可以從後臺查詢HKWorkoutSession的數據,例如:步數,卡路里,心跳率,但無法查詢加速度計數據或CMDeviceMotion數據。

我谷歌它很多,我測試這個代碼。
https://developer.apple.com/videos/play/wwdc2016/713/

WWDC sample code download

這是因爲屏幕關閉的問題並不準確。屏幕關閉時,它不會在XCode中打印CMDeviceMotion數據。

有人說MSensorRecorder可能工作,但它有3秒的延遲。

有沒有辦法得到這個?

回答

2

屏幕關閉時,您的應用程序正在暫停。因此,您的問題不是「屏幕關閉時CMMotionManager不提供數據」,而是「屏幕關閉時我的應用程序未運行」。

作爲一種變通方法,你就可以開始鍛鍊:鍛鍊時處於活動狀態,您的應用程序會在後臺運行,您可以繼續從CMMotionManager同樣的方式請求數據,你現在這樣做。但要小心:應用程序不能在後臺運行時使用超過15%的CPU,否則將被看門狗殺死。

手錶上的鍛鍊和背景模式的更多詳細信息,這WWDC視頻:Building Great Workout AppsKeeping Your Watch App Up to DateArchitecting for Performance on watchOS 3