過去已經完成了一些Android開發,但它已經有一段時間了 - 想要構建一個使用方向和接近傳感器的應用程序。所以...Android傳感器 - 接近傳感器的問題使用不同的手機時的值和問題
mSensorManager = (SensorManager) getSystemService(SENSOR_SERVICE);
mSensorManager.registerListener(this, mSensorManager.getDefaultSensor(Sensor.TYPE_ALL) , SensorManager.SENSOR_DELAY_GAME);
因此,設置聽衆 - 傾聽所有傳感器 - 我是否應該只聽兩個? (這會節省電池?)
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我可以得到它的方向傳感器的TextView顯示值(此電話不有一個接近傳感器)
但在我的Nexus One上運行相同的代碼導致一個可愛的空白屏幕!?
對不起,長的問題!但任何幫助將是一件好事,如果你需要更多的Infor只是問, LG手機是2.2的Nexus One是2.2.2 感謝,
大衛
因此,我想要的東西是理所當然的 - 我爲所有傳感器設置了一個監聽器,但似乎我需要兩個監聽器 - 一個用於定向,另一個用於Proximity – 2011-02-23 13:01:28
我的印象是您可以使用相同的監聽器。但是,請記住,方向傳感器已棄用。 – CommonsWare 2011-02-23 13:03:43
我讀得很好,但Eclipse並未警告它? - 瞄準Android 2.1的應用程序 - 你知道如何快速使用.getOrientation? – 2011-02-25 20:50:16