[英]Android : How to fix force close error on registering accelerometer listener?
[英]Registering an accelerometer listener with a custom rate
private static int SENSOR_DELAY_SLOW = 5000000;
sensMngr = (SensorManager) getSystemService(SENSOR_SERVICE);
sensMngr.registerListener(this, sensMngr.getDefaultSensor(Sensor.TYPE_ACCELEROMETER), SENSOR_DELAY_SLOW);
我想每5秒捕获一次传感器的数据,但是它忽略了我想要的速率。 侦听器每秒捕获的值甚至超过400次。
当然,我可以使用onSensorChanged(SensorEvent event)方法手动过滤传入的数据,但是我的主要目的是减少电池消耗。
我究竟做错了什么?
谢谢。
您需要SensorManager.SENSOR_DELAY_UI,然后必须从那里进行过滤。 仅有4种可选速度,您无法定义自己的速度。 SENSOR_DELAY_UI倾向于每秒最多进行约3个采样,并且由于在传感器值更改时会获得结果,因此采样之间可能需要几秒钟的时间。 各个设备的情况各不相同。
无法为Android中的传感器值交付定义固定费率。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.