java - 我无法使用计步传感器
问题描述
我正在尝试制作基本的计步器应用程序,但我有一个问题。这是我的代码。只是其他括号工作。问题出在哪里?谢谢大家的帮助。
这是我的代码;
sensorManager = (SensorManager) getSystemService(SENSOR_SERVICE);
if (sensorManager.getDefaultSensor(Sensor.TYPE_STEP_COUNTER) != null) {
mStepCounter = sensorManager.getDefaultSensor(Sensor.TYPE_STEP_COUNTER);
isCounterSensorPresent = true;
tv_stepCounter.setText("counter sensor");
} else {
tv_stepCounter.setText("counter sensor is not present");
isCounterSensorPresent = false;
}
@Override
protected void onResume() {
super.onResume();
if (sensorManager.getDefaultSensor(Sensor.TYPE_STEP_COUNTER) != null) {
sensorManager.registerListener(this, mStepCounter, SensorManager.SENSOR_DELAY_NORMAL);
}
}
@Override
protected void onPause() {
super.onPause();
if (sensorManager.getDefaultSensor(Sensor.TYPE_STEP_COUNTER) != null) {
sensorManager.unregisterListener(this, mStepCounter);
}
}
@Override
public void onSensorChanged(SensorEvent sensorEvent) {
if (sensorEvent.sensor == mStepCounter) {
stepCount = (int) sensorEvent.values[0];
tv_stepCounter.setText(String.valueOf(stepCount));
}
}
这是我的权限。
if (ContextCompat.checkSelfPermission(this,
Manifest.permission.ACTIVITY_RECOGNITION) == PackageManager.PERMISSION_DENIED) {
//ask for permission
requestPermissions(new String[]{Manifest.permission.ACTIVITY_RECOGNITION}, 0);
}
和
<uses-permission android:name="android.permission.ACTIVITY_RECOGNITION" />
解决方案
推荐阅读
- angular-cli - @Angular/CLI 坏了
- javascript - mongodb findUpdateOne 用对象替换对象
- c++ - 为什么我的地图只是在 lambda 函数中临时修改并且值没有保留?
- angular - ng build 失败,找不到模块错误
- swift - GMSPlace 方法 isOpen 返回值 GMSPlaceOpenStatus 值始终为“未知”
- python - 有没有办法将 python 列表导出到 csv 文件?
- redis - Redis Mass Insertion 不适用于(错误)ERR 未知命令
- mysql - 如何删除另一个表中不存在的 JSON 键?
- swagger - OpenAPI 中的可变查询参数名称
- python - ValueError 无法广播从形状 (1) 到形状 () 的掩码