Android 传感器步进计数器有时在三星设备上无法正常工作
我创建了一个演示从接收步骤从重新启动像这样Android 传感器步进计数器有时在三星设备上无法正常工作,android,sensors,samsung-mobile,pedometer,Android,Sensors,Samsung Mobile,Pedometer,我创建了一个演示从接收步骤从重新启动像这样 public class MainActivity extends AppCompatActivity implements SensorEventListener { private SensorManager sensorManager; @Override public void onCreate(Bundle savedInstanceState) { ... sensorManager
public class MainActivity extends AppCompatActivity implements SensorEventListener {
private SensorManager sensorManager;
@Override
public void onCreate(Bundle savedInstanceState) {
...
sensorManager = (SensorManager) getSystemService(Context.SENSOR_SERVICE);
}
@Override
protected void onResume() {
super.onResume();
countSensor = sensorManager.getDefaultSensor(Sensor.TYPE_STEP_COUNTER);
sensorManager.registerListener(this, countSensor, SensorManager.SENSOR_DELAY_UI);
}
@Override
public void onSensorChanged(SensorEvent event) {
if (event.sensor.getType() == Sensor.TYPE_STEP_COUNTER) {
Log.i("TAG","step from reboot" + String.valueOf(event.values[0]));
}
}
}
但是,当我在我的设备(三星Galaxy S4)上测试时,有时会出现问题:(.我通过与
经过多次测试,我发现
差不多是时候了,返回的步数等于,但是有时不同。因此我想可能会使用另一个传感器来计算步数,但我不知道是哪个传感器?我想这不是因为关闭屏幕时返回的步数很少
有时,在返回步骤的同时停止工作,例如,我走大约100步=>SHealth display 110和demo app display 100,然后我继续走大约200步=>SHealth display 305和demo app display 121(看起来好像停止了工作)
我还收到来自不同设备的许多用户的报告(低评级:()),但我只能在我的设备上复制它
我不知道如何解决这个问题。我认为是接收步骤的最佳传感器(与相比)
如果您有任何帮助或建议,我们将不胜感激。您是否在离开应用程序时注销了传感器?根据SDK文档: “如果希望在较长时间内持续跟踪步数,请勿注销此传感器,这样即使AP处于挂起模式,它也会在后台持续计数步数,并在AP唤醒时报告聚合计数。”
希望这将有助于……我们在使用手机的默认steps传感器时也遇到了这个问题。但是,我们正在使用-我们没有您遇到的问题(超过100000个用户),所以可能是出了问题? 这个问题很相似,你不能依赖这样的机制。就我们的情况而言,我们在短时间内已经收到了很多步骤。即使你是一只老虎,你也不能做出那么多步骤 问题是,三星操纵操作系统,有很多东西在nexus设备上运行良好,但在三星设备上却不行。 在尝试修复阶跃传感器的行为后,我们发现我们需要为三星手机或不支持它的手机提供一种替代方案 仅供参考,我们遇到一些手机(主要是摩托罗拉)在设备中没有steps传感器,因此尝试查找传感器时返回null
SensorManager sensorManager = (SensorManager) getSystemService(SENSOR_SERVICE);
Sensor stepDetector = sensorManager.getDefaultSensor(Sensor.TYPE_STEP_DETECTOR);
if (stepsDetector != null) {
//Do something
}
您可以使用(电池耗电量巨大,请小心)实现自己的机制。谢谢您,但我不会在离开应用程序时注销传感器。