6

私のアプリは、画面がオフのときにデバイスの動きを検出するだけで済みます。

このタスクに加速度計が使用されていることは知っていますが、すべてのデバイスで画面がオフになっていると機能しません。これはデバイスのリストですhttp://www.saltwebsites.com/2012/android-accelerometers-screen-off

すべてのデバイスで機能する、画面がオフのときに加速度センサーのデータを取得する方法はありますか?

または、別のセンサーを使用して動きを検出する方法はありますか?

4

4 に答える 4

2

はい、バックグラウンドまたは画面がオフのときに加速度計を使用できますが、デバイスがスリープ状態にならないように[リンク]
を保持する必要があります。WakeLock

デバイスが静止しているか、または再び動き始めたかを検出する必要がある場合は 、Google サービスからのユーザーの現在のアクティビティの認識に関心があるかもしれません。

于 2013-07-01T09:27:23.793 に答える
1

簡単な調査の結果、画面がオフの場合、ほとんどの Android デバイスが加速度計イベントを送信しないことがわかりました。このバグの詳細については、こちらをご覧くださいここにも。

于 2013-07-01T09:28:43.637 に答える
0

画面がオフの場合、CPU はスリープ状態になり、部分的なウェイクロックを取得しないとイベントをキャプチャできません。onPauseを呼び出してonResumeを解放するときに、部分的なウェイクロックを取得することをお勧めします。ウェイクロックには注意してください。携帯電話のエネルギーを大量に消費します。慎重に管理する必要があります。

PS: onPause メソッドでウェイクロックを取得する必要があります。これを別の場所で呼び出そうとすると、CPU が既にシャットダウンされている可能性があるため取得できない可能性があるためです。

于 2013-07-01T10:22:17.280 に答える