2017-04-17 2 views
0

Android Appの場合、内部センサー(加速度など)の値がグラフに表示されるため、この信号に定期的にアクセスする方法を見つける必要があります。 現時点では私はSensorEventListenerを使用していますが、残念ながら、これは変更するたびに値を取得する可能性があります。 グラフを(ポイント・ツー・ポイント)時間に依存して表示したいので、これは古い値から新しい値への線を直接描画することを意味します(古い値が長い場合は、値の線形変化)。 私の質問:センサーのデータに定期的にアクセスするにはどうすればよいですか?Android定期センサーデータ

答えて

0

documentation for SensorManagerregisterListener(android.hardware.SensorEventListener, android.hardware.Sensor int)

は「与えられたサンプリング周波数で与えられたセンサー用SensorEventListenerを登録します。」と述べています

しかし、これらのイベントを取得するには、アプリケーションをアクティブにする必要があります(部分的なウェイクロックを保持する)。バックグラウンドサービスでこれを行う方が、アプリケーションをアクティブにする必要はありません。例えば、SensorEventListener in a service

+0

この問題は、時間がシステムへの示唆にすぎないということです。イベントは、指定されたレートより速くまたは遅く受信されることがあります。 これは、 'registerListener(android.hardware.SensorEventListener、android.hardware.Sensor int、1000000)' を意味します。 (1 millionμs= 1s)は毎秒1つの値を生成しませんが、それ以上の値を生成します。 それでは、毎秒センサー信号を受信するなど、何をすることができますか? – Scian

+0

あなたが興味を持っていた最後の読書を取得した時刻を記録しておき、1秒以内に読まれたものは何もしないでください – GreyBeardedGeek

0

最終的に私はタイマーを使いました。タイマーを使って私のセンサーからの値を定期的にチェックしました。 残念ながらregisterListenerは値がシステムのための提案に過ぎないため、動作しませんでした。 ご協力いただきありがとうございます。

関連する問題