当前位置: 首页 > 知识库问答 >
问题:

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

东郭宏朗
2023-03-14

我在访问Moto360的心率传感器时遇到问题。

我试着做以下事情:

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

然后实现SensorEventListener接口:

@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个答案

鲜于宏义
2023-03-14

在我做了以下工作后开始为我工作:

>

  • 从watch中卸载了我的应用程序

    adb -s localhost:4444 uninstall com.example.android.wearable.jumpingjack
    

    添加了获取心率传感器的权限

    <uses-permission android:name="android.permission.BODY_SENSORS"/>
    
    android:minSdkVersion="20" android:targetSdkVersion="20"
    
    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}
    

  •  类似资料:
    • 佩戴舒适的心率传感器与 A300,从您的每日运动中获得最大益处。您可以在 A300 中实时准确查看您的心率。查看您的训练的主要作用,并关注您希望实现的目标——燃烧脂肪或提高健康水平。或根据您在 Flow 网络服务上规划的训练指导找到心率区。心率传感器在您游泳时也可检测您的心率。 虽然训练时存在许多暗示身体状况的主观迹象(主观体力感觉、呼吸频率和身体感觉),但都不如测量心率可靠。它是内在和外在因素影

    • 目前,谷歌Hangouts和Facebook Messenger等应用程序能够接受来自Android可穿戴设备的语音输入,将其转换为文本,并向用户发送回复信息。我遵循了https://developer.android.com/training/wearables/notifications/voice-input.html的教程,当我调用这里概述的方法时: 我收到一行RemoteInput.ge

    • 物联网是智能穿戴设备的核心技术,智能穿戴设备是物联网的关键载体。两者的结合,实现更加丰富灵活的应用功能。 我们能够提供: 最广泛的网络覆盖面; 灵活的计费方式,降低运营费用; 综合的管理平台和多种应用,支持灵活的业务运营; 稳定,快捷的通信服务。

    • 在Samsung的编程指南(第77-81页)中有关于如何使用S Health Service SDK设置和获取心率信息的参考。不过,我想直接访问Galaxy S5的心率传感器,就像访问加速度计、陀螺仪、光传感器等传感器一样。我为三星gear live找到了这个例子,但我找不到任何Galaxy S5的例子。 是否可以直接访问Galaxy S5的心率传感器?有没有人有一个如何做的代码示例? 谢谢你。

    • 如有任何建议将不胜感激。

    • 是否可以在Android Wear中记录来自心率传感器的原始光线数据?我知道以bpm记录计算的心率是可能的,但我想记录原始的光数据。 我正在使用的设备是Polar M600。 这个问题以前已经问过了,但我现在再问一遍,以防此后有任何新的设备或API使访问这些数据成为可能: