加速度計データを読み取る簡単なアプリを作成しましたが、電話をテーブルに置いて静かにしていると、サンプリングレートが低すぎることがわかりました(1サンプル5秒でも)。サンプリング レートを FASTEST に設定します。サンプリング レートは常に高くなります。
Androidがこれを行う理由と方法を知りたいですか?jniまたはハードウェアは常にデータを読み取ると思いますが、2つのサンプル間に変化がないことがわかった場合はデータを破棄します。
センサーリスナーのドキュメントからわかるように、センサーが変更されたときにプロシージャonSensorChanged
が呼び出されます。これは、デバイスを押したままにすると、センサー値が変更されないことを意味します。
ほとんどの電話はセンサー値にノイズを追加し、これらの値は常に変化していることを認めなければなりません。あなたはあなたの電話を「誇りに思う」べきです-それは多くのノイズを追加しません。