有人可以提供有关如何使用接近传感器的示例吗?我试图以与其他传感器相同的方式使用它,但是它不起作用。
这是我一直在使用的代码 fragment :
final SensorManager mSensorManager;
final Sensor mproximity;
mSensorManager = (SensorManager)getSystemService(SENSOR_SERVICE);
mproximity = mSensorManager.getDefaultSensor(Sensor.TYPE_PROXIMITY);
mSensorManager.registerListener(new SensorListener(){
public void onAccuracyChanged(int arg0, int arg1) {
// TODO Auto-generated method stub
Toast.makeText(test.this,"proximity sensor accu ", Toast.LENGTH_SHORT).show();
}
public void onSensorChanged(int arg0, float[] arg1) {
// TODO Auto-generated method stub
Toast.makeText(test.this,"proximity sensor ", Toast.LENGTH_SHORT).show();
}
}, Sensor.TYPE_PROXIMITY, 1);
请告诉我我要去哪里错了。
最佳答案
不建议使用registerListener(SensorListener, int, int)
方法,而应使用registerListener(SensorEventListener, Sensor, int)
:
mSensorManager.registerListener(proximityListener,
mSensorManager.getDefaultSensor(Sensor.TYPE_PROXIMITY),
SensorManager.SENSOR_DELAY_UI);
此外,您应该保存对
Sensor(Event)Listener
的引用,以便能够取消注册它。关于android - 无法在Android中获取接近传感器的值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4403301/