Android光传感器采样频率太低

我目前正在尝试做一个Android演示,以约50Hz的采样率测试光照水平。不过,我只能得到onSensorChanged回拨2-3次。我的手机是xiaomi mi5s(lineage os 14.1安装),Android 7.1。Android光传感器采样频率太低

public class MainActivity extends Activity implements SensorEventListener { 

private SensorManager mSensorManager;

private Sensor mLight;

@Override

public final void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

mSensorManager = (SensorManager) getSystemService(Context.SENSOR_SERVICE);

mLight = mSensorManager.getDefaultSensor(Sensor.TYPE_LIGHT);

}

@Override

public final void onAccuracyChanged(Sensor sensor, int accuracy) {

// Do something here if sensor accuracy changes.

}

@Override

public final void onSensorChanged(SensorEvent event) {

// The light sensor returns a single value.

// Many sensors return 3 values, one for each axis.

float lux = event.values[0];

Log.i("zz", lux + "");

// Do something with this sensor value.

}

@Override

protected void onResume() {

super.onResume();

mSensorManager.registerListener(this, mLight, SensorManager.SENSOR_DELAY_NORMAL);

}

@Override

protected void onPause() {

super.onPause();

mSensorManager.unregisterListener(this);

}

}

回答:

您可以使用SENSOR_DELAY_FASTEST而不是普通的。这将使硬件与硬件提供可靠的读数一样快。但是光传感器完全可能在50赫兹时不工作。它的主要用例并不要求这样做。

以上是 Android光传感器采样频率太低 的全部内容, 来源链接: utcz.com/qa/260642.html

回到顶部