The sensor you need to work with is the proximity sensor, try this, it will let you know if the sensor is hidden or not (and it works during your call)
SensorManager sm = (SensorManager)getSystemService(Context.SENSOR_SERVICE);
sm.registerListener(new SensorEventListener() {
@Override
public void onSensorChanged(SensorEvent event) {
Log.i(TAG,"sensor: " + event.sensor.getName() + ", values: " + Arrays.toString(event.values));
}
@Override
public void onAccuracyChanged(Sensor sensor, int accuracy) {
Log.i(TAG,"accuracy change: " + sensor + ", accuracy: " + accuracy);
}
}, sm.getDefaultSensor(Sensor.TYPE_PROXIMITY),SensorManager.SENSOR_DELAY_FASTEST);
source
share