gpt4 book ai didi

android - 如何在 Android 可穿戴设备中访问心率传感器?

转载 作者:塔克拉玛干 更新时间:2023-11-01 22:07:33 25 4
gpt4 key购买 nike

我在访问 Moto 360 上的心率传感器时遇到问题。

我尝试了以下事情:

Sensor mHeartRateSensor = mSensorManager.getDefaultSensor(Sensor.TYPE_HEART_RATE);
mSensorManager.registerListener(this, mHeartRateSensor, SensorManager.SENSOR_DELAY_NORMAL);

然后实现 SensorEventListener 接口(interface):

@Override
public void onSensorChanged(SensorEvent event) {

String TAG = "tag";
Log.i(TAG, "--------------------------");
Log.i(TAG, msg);
Log.i(TAG, ""+ event.sensor.getType());
Log.i("live","--------------");

令我感到奇怪的是,我根本没有收到任何消息(不仅是心率)。

我也尝试列出所有传感器,但它没有在列表中显示心率传感器。

当然我已经添加了权限

 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.watchtest" >

<uses-feature android:name="android.hardware.type.watch" />
<uses-permission android:name="android.permission.BODY_SENSORS" />

有什么想法吗?

谢谢。

w.

最佳答案

在我完成以下操作后开始为我工作:

  1. 从 watch 上卸载了我的应用

    adb -s localhost:4444 uninstall com.example.android.wearable.jumpingjack
  2. 添加了获取心率传感器的权限

    <uses-permission android:name="android.permission.BODY_SENSORS"/>
  3. 设置最低和目标 SDK 版本以匹配 watch

    android:minSdkVersion="20" android:targetSdkVersion="20"

再次启动应用程序。我收到了带 Sensor.TYPE_HEART_RATE 的心率传感器,我开始接收它的读数。尽管他们远非好事。读数很多,但都一样,仅限于这5个值:

heartRate onSensorChanged values = [0.0], accuracy = 0, sensor = {Sensor name="Heart Rate Sensor", vendor="Motorola", version=1, type=21, maxRange=65535.0, resolution=1.0, power=0.45, minDelay=0}
heartRate onSensorChanged values = [53.0], accuracy = 2, sensor = {Sensor name="Heart Rate Sensor", vendor="Motorola", version=1, type=21, maxRange=65535.0, resolution=1.0, power=0.45, minDelay=0}
heartRate onSensorChanged values = [54.0], accuracy = 2, sensor = {Sensor name="Heart Rate Sensor", vendor="Motorola", version=1, type=21, maxRange=65535.0, resolution=1.0, power=0.45, minDelay=0}
heartRate onSensorChanged values = [55.0], accuracy = 2, sensor = {Sensor name="Heart Rate Sensor", vendor="Motorola", version=1, type=21, maxRange=65535.0, resolution=1.0, power=0.45, minDelay=0}
heartRate onSensorChanged values = [77.0], accuracy = 1, sensor = {Sensor name="Heart Rate Sensor", vendor="Motorola", version=1, type=21, maxRange=65535.0, resolution=1.0, power=0.45, minDelay=0}

大多数时候,我得到的都是相同的 53.0 值,这似乎不是我的真实心率。 77 可能是那个。

关于android - 如何在 Android 可穿戴设备中访问心率传感器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26489281/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com