Android センサー (FroYo まで) は、アプリケーションに「生の」データを提供します。
最小限の「調理」(つまり、処理)が含まれます。
加速度 & コンパス デバイスは、絶対加速度 & 磁気データをそれぞれ提供します。
ジャイロスコープは相対角速度を提供します。
ジャイロスコープは、特定の状態/位置に関して相対的なデータを提供しません。
理解する必要があるのは、ジャイロスコープ データが角速度であることです。
角速度は、単純に、電話が回転する速さ (度/秒) です。
静止すると、ジャイロは (0,0,0)を返し
、回転すると回転速度がわかります。
これは、ジャイロの読みが再び (0,0,0) になったときに再び
静止するまで続きます。
理論的には、ジャイロはコンパスの「校正」に使用できます。
しかし、これを行うには、多くの実験が必要になります。
いじるのに理想的な場所は、センサー HAL です。
注:コンパス データのみが必要な場合でも、すべてのセンサー ハードウェアをオンにする必要があります。
そのためにジャイロ/アクセルデータを相互参照することになります。これは、消費電力が大きくなり
、バッテリー寿命が極端に短くなることを意味します。すべてのセンサーを継続的にオンにする
と、標準の Android フォンのバッテリーが 4 ~ 5 時間で消耗する可能性があります。
Android センサーの詳細については、こちらを参照してください。