我尝试从getMaximumRange()方法获得一个最大值,用于仿真器中的接近传感器(不是在真实的手机中!)。但是我只得到值1.0而不是10。为什么?
我的代码很简单。
@Override
protected void onStart() {
super.onStart();
if (mProximitySensor != null) {
mProximitySensorTextView.setText(mProximitySensor.getName());
mProximityMaxTextView.setText("getMaximumRange: ");
mProximityMaxTextView.append(String.valueOf(mProximitySensor.getMaximumRange()));
mSensorManager.registerListener(this, mProximitySensor,
SensorManager.SENSOR_DELAY_NORMAL);
} else {
Log.e("Sensor", "Not available.");
finish();
}
}
最佳答案
一些接近传感器仅支持二进制近或远测量。
在这种情况下,传感器应在远处状态报告其最大范围值,在近处状态报告较小的值。
可以通过使用以下USSD *#*#0588#*#*
来确认
这将触发接近度测试。在真实的手机或模拟器上尝试此操作并确认