過去にいくつかの Android Dev を行ったことがありますが、しばらく時間がかかりました。方向センサーと近接センサーを使用するアプリを構築したいと考えています。それで...
mSensorManager = (SensorManager) getSystemService(SENSOR_SERVICE);
mSensorManager.registerListener(this, mSensorManager.getDefaultSensor(Sensor.TYPE_ALL) , SensorManager.SENSOR_DELAY_GAME);
リスナーをセットアップします - すべてのセンサーをリッスンします - 2 つだけをリッスンする必要があるのだろうか? (これはバッテリーを節約しますか?)
Sensor mySensor = event.sensor;
// if (mySensor.getType() != Sensor.TYPE_ORIENTATION) return;
if (mySensor.getType() == Sensor.TYPE_ORIENTATION)
{
float x = event.values[0];
float y = event.values[1];
float z = event.values[2];
tv.setText("Rotation around X, Azimuth = " + x);
tv1.setText("Rotation around Y, Pitch = " + y);
tv2.setText("Rotation around Z, Roll = " + z);
}
if (mySensor.getType() == SensorManager.SENSOR_PROXIMITY)
{
float p = event.values[0];
tv3.setText("Proximity = " + p);
}
次に onSensorChanged で - 上記を参照
私のLG Optimus Oneでは、方向センサーのTextViewsに値を表示することができます(この電話には近接センサーがありません)
しかし、Nexus One で同じコードを実行すると、きれいな空白の画面が表示されます!?
質問が長くなってすみません!しかし、どんな助けでも良いでしょう.さらに情報が必要な場合は、質問してください.LG電話は2.2です.Nexus Oneは2.2.2です.
デビッド