无法在android中获取接近传感器的值

che*_*han 5 android sensor proximity

有人可以举例说明如何使用接近传感器吗?我尝试以与其他传感器相同的方式使用它,但它不起作用.

这是我一直在使用的代码片段:

 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);
Run Code Online (Sandbox Code Playgroud)

请告诉我哪里出错了.

Gub*_*bel 5

registerListener(SensorListener, int, int)不推荐使用该方法,请registerListener(SensorEventListener, Sensor, int)改用:

mSensorManager.registerListener(proximityListener,
        mSensorManager.getDefaultSensor(Sensor.TYPE_PROXIMITY),
        SensorManager.SENSOR_DELAY_UI);
Run Code Online (Sandbox Code Playgroud)

此外,您应该保存对您的引用Sensor(Event)Listener,以便能够取消注册它.