2017-05-07 2 views
0

손목을 뗀 후에 WatchOS에서 실시간 가속도계 데이터를 얻지 못하고 화면이 꺼지는 것 같습니다. CMMotionManager에서 가져온 데이터는 몇 초 후에 Apple의 배터리 관리를 위해 멈 춥니 다.시계 화면이 꺼져있을 때 OS3에서 가속도계 데이터를 가져올 수 없습니다.

백그라운드에서 HKWorkoutSession의 데이터를 쿼리 할 수 ​​있습니다 (예 : 단계 수, 칼로리, 심장 박동 수). 그러나 Accelerometer 데이터 또는 CMDeviceMotion 데이터를 쿼리 할 수 ​​없습니다.

Google을 많이 사용하며이 코드로 테스트합니다. https://developer.apple.com/videos/play/wwdc2016/713/


WWDC sample code download

이 때문에 화면 꺼짐 문제의 정확한 아니다. 화면이 꺼져있을 때 XCode에서 CMDeviceMotion 데이터를 인쇄하지 않습니다.

누군가 MSensorRecorder가 작동하지만 3 초 지연이 있다고합니다.

이 방법이 있습니까?

답변

2

화면이 꺼지면 앱이 일시 중지됩니다. 따라서 문제는 "화면이 꺼져있을 때 CMMotionManager가 데이터를 제공하지 않지만"화면이 꺼지면 내 앱이 실행되지 않습니다 "입니다.

해결 방법으로 운동을 시작할 수 있습니다. 운동이 활성화 된 상태에서 앱이 백그라운드에서 실행 중이며 지금과 같은 방식으로 CMMotionManager에서 데이터를 계속 요청할 수 있습니다. 하지만주의하십시오. 앱에서 백그라운드 작업으로 실행되는 동안 CPU의 15 % 이상을 사용할 수 없습니다. 그렇지 않으면 워치 독에 의해 종료됩니다.

시계 운동과 배경 모드에 대한 자세한 내용은이 WWDC 비디오 : Building Great Workout Apps, Keeping Your Watch App Up to Date, Architecting for Performance on watchOS 3

관련 문제