我正在尝试使用MainActivity.java上的以下代码访问LG Watch Urbane的心率传感器:
mSensorManager = (SensorManager) getSystemService(Context.SENSOR_SERVICE);
mHeartRateSensor = mSensorManager.getDefaultSensor(Sensor.TYPE_HEART_RATE);
boolean sensorRegistered = mSensorManager.registerListener(this, mHeartRateSensor, SensorManager.SENSOR_DELAY_NORMAL);
Log.d("Sensor Status:", " Sensor registered: " + (sensorRegistered ? "yes" : "no"));
问题是我收到此错误:
E/SensorManager: sensor or listener is null
发生该错误是因为没有与TYPE_HEART_RATE相关联的传感器。因此,我编写了一些代码以使用.getSensorList(Sensor.TYPE_ALL)方法获取传感器的完整列表,我得到了以下信息:
03-14 02:56:43.221 2936-2936/? I/Sensor list: MPU6515 Accelerometer: 1
03-14 02:56:43.221 2936-2936/? I/Sensor list: AK8963 Magnetometer: 2
03-14 02:56:43.221 2936-2936/? I/Sensor list: AK8963 Magnetometer Uncalibrated: 14
03-14 02:56:43.221 2936-2936/? I/Sensor list: MPU6515 Gyroscope: 4
03-14 02:56:43.221 2936-2936/? I/Sensor list: MPU6515 Gyroscope Uncalibrated: 16
03-14 02:56:43.221 2936-2936/? I/Sensor list: HSPPAD038 Pressure: 6
03-14 02:56:43.221 2936-2936/? I/Sensor list: MPU6515 Accelerometer -Wakeup Secondary: 1
03-14 02:56:43.221 2936-2936/? I/Sensor list: AK8963 Magnetometer -Wakeup Secondary: 2
03-14 02:56:43.221 2936-2936/? I/Sensor list: AK8963 Magnetometer Uncalibrated -Wakeup Secondary: 14
03-14 02:56:43.221 2936-2936/? I/Sensor list: MPU6515 Gyroscope -Wakeup Secondary: 4
03-14 02:56:43.221 2936-2936/? I/Sensor list: MPU6515 Gyroscope Uncalibrated -Wakeup Secondary: 16
03-14 02:56:43.221 2936-2936/? I/Sensor list: HSPPAD038 Pressure -Wakeup Secondary: 6
03-14 02:56:43.221 2936-2936/? I/Sensor list: Gravity: 9
03-14 02:56:43.221 2936-2936/? I/Sensor list: Linear Acceleration: 10
03-14 02:56:43.221 2936-2936/? I/Sensor list: Rotation Vector: 11
03-14 02:56:43.222 2936-2936/? I/Sensor list: Step Detector: 18
03-14 02:56:43.222 2936-2936/? I/Sensor list: Step Counter: 19
03-14 02:56:43.222 2936-2936/? I/Sensor list: Significant Motion Detector: 17
03-14 02:56:43.222 2936-2936/? I/Sensor list: Game Rotation Vector: 15
03-14 02:56:43.222 2936-2936/? I/Sensor list: GeoMagnetic Rotation Vector: 20
03-14 02:56:43.222 2936-2936/? I/Sensor list: Orientation: 3
03-14 02:56:43.222 2936-2936/? I/Sensor list: Tilt Detector: 22
03-14 02:56:43.222 2936-2936/? I/Sensor list: Gravity -Wakeup Secondary: 9
03-14 02:56:43.222 2936-2936/? I/Sensor list: Linear Acceleration -Wakeup Secondary: 10
03-14 02:56:43.222 2936-2936/? I/Sensor list: Rotation Vector -Wakeup Secondary: 11
03-14 02:56:43.222 2936-2936/? I/Sensor list: Step Detector -Wakeup Secondary: 18
03-14 02:56:43.222 2936-2936/? I/Sensor list: Step Counter -Wakeup Secondary: 19
03-14 02:56:43.222 2936-2936/? I/Sensor list: Game Rotation Vector -Wakeup Secondary: 15
03-14 02:56:43.222 2936-2936/? I/Sensor list: GeoMagnetic Rotation Vector -Wakeup Secondary: 20
03-14 02:56:43.222 2936-2936/? I/Sensor list: Orientation -Wakeup Secondary: 3
03-14 02:56:43.222 2936-2936/? I/Sensor list: Wrist Tilt Gesture: 26
我在那里没有看到任何心率传感器,所以我不知道为了从中获取数据我必须使用什么类型的编号。
有人知道我在做什么错吗?
提前致谢。
确保您的应用程序已定义并授予“人体传感器”权限。
验证:
<uses-permission android:name="android.permission.BODY_SENSORS"/>
在您的AndroidManifest.xml中
另外,请通过检查手表上的“权限”设置来确保已授予该权限:“设置”->“权限”->“您的应用”
发生该错误的原因是没有与TYPE_HEART_RATE相关联的传感器。因此,我编写了一些代码,以便使用.getSensorList(sensor.type_all)方法获得传感器的完整列表,结果如下: 我没有看到任何心率传感器在那里,所以我不知道我必须使用什么类型的数字,以便从它得到数据。 谁知道我做错了什么?
佩戴舒适的心率传感器与 A300,从您的每日运动中获得最大益处。您可以在 A300 中实时准确查看您的心率。查看您的训练的主要作用,并关注您希望实现的目标——燃烧脂肪或提高健康水平。或根据您在 Flow 网络服务上规划的训练指导找到心率区。心率传感器在您游泳时也可检测您的心率。 虽然训练时存在许多暗示身体状况的主观迹象(主观体力感觉、呼吸频率和身体感觉),但都不如测量心率可靠。它是内在和外在因素影
我有一个Android应用程序,可以从Polar H10设备上获取心率测量值。我完全不知道如何解释心率。蓝牙的各种链接。不幸的是,com站点导致了404个错误。 特征值为[16、59、83、4] 据我所知,第二个字节(59)是BPM中的心率。但这似乎不是十进制的,因为值先升到127,然后再升到-127,-126,-125。。。它也不是十六进制。 我试过(在科特林) 一旦-127出现,所有值都会崩溃
在Samsung的编程指南(第77-81页)中有关于如何使用S Health Service SDK设置和获取心率信息的参考。不过,我想直接访问Galaxy S5的心率传感器,就像访问加速度计、陀螺仪、光传感器等传感器一样。我为三星gear live找到了这个例子,但我找不到任何Galaxy S5的例子。 是否可以直接访问Galaxy S5的心率传感器?有没有人有一个如何做的代码示例? 谢谢你。
是否可以在Android Wear中记录来自心率传感器的原始光线数据?我知道以bpm记录计算的心率是可能的,但我想记录原始的光数据。 我正在使用的设备是Polar M600。 这个问题以前已经问过了,但我现在再问一遍,以防此后有任何新的设备或API使访问这些数据成为可能:
您可使用 A370 作为心率传感器与另一个可接收心率传感器配置文件的蓝牙设备,如码表、运动应用程式如 Polar Beat 或其他腕式穿戴设备。要使用它,首先您需要将 A370 与接收设备配对,就像其他蓝牙配件一样。请参阅接收设备用户指南中的配对说明。 要打开心率传感器模式: 进入主菜单中的设置。 轻击 ,接受确认请求以打开心率传感器模式 要关闭心率传感器模式,请按返回按钮并确认您的选择。 请注意