2011-11-08 21 views
3

重力センサーを使用している2.3.3用に設計されたソフトウェアがあります。2.1のAndroid重力センサー(TYPE_GRAVITY)

以下のコード -

private SensorManager sman = (SensorManager) getContext().getSystemService(Context.SENSOR_SERVICE); 
private Sensor magnetfield, gravity; 
... 
magnetfield = sman.getDefaultSensor(Sensor.TYPE_MAGNETIC_FIELD); 
gravity = sman.getDefaultSensor(Sensor.TYPE_GRAVITY); 

私は、バージョン2.1のサポートを追加することにしました。しかし、TYPE_GRAVITYは2.1ではサポートされていないようですが、Sensor.TYPE_GRAVITYがもう認識されないというエラーが表示されます。

質問 - 「Android重力センサー2.1」を検索すると、2.1デバイスの重力センサーをデモする動画にGoogleのリンクがあります。それはそれにアクセスする方法があるということですか? B)そうでない場合、これを使用できる最低バージョンは何ですか? SDKで見つけることができませんでした。あなたは2.1上でそれらを使用できるようにするつもりはないよう

おかげ

+0

これを解決しましたか?私はTYPE_GRAVITYセンサーのJava実装を唯一の3つの基本センサーに基づいて探しています。 – Bresiu

答えて

7

ソースコードを見ると、実際には重力センサーがバターワースフィルターを使用して計算されていることがわかります。私はまた、dsp(here)に関する質問をしました。私がかなり多くのことを理解するのを助けたので、リンクが助けてくれることを願っています。

バージョン<の重力センサーの場合、同じ結果が必要な場合は、自分でフィルターを実装する必要があります。

Hereはソースコードです。

後で編集:有効なリンクを追加しました!

+0

あなたがソースコードが見つからない場合は、コードをお知らせください。 – Sree

+0

@Sreekanthssここに行く、私はリンクを更新しました。 – INS

+0

ありがとうございました...そして+1を助けるために+1 .. – Sree

2

センサーTYPE_LINEAR_ACCELERATIONTYPE_GRAVITYは、APIレベル9(アンドロイド2.3)以降で利用可能です。

もしあなたがそれを実装したいのであれば、あなたは携帯電話の方向を覚えていなければならないと思います。