在Samsung's programming guide(第77-81页)中,有关如何使用S Health Service SDK设置和获取心率信息的参考。但是,我希望直接访问Galaxy S5的心率传感器,就像您可以访问加速度计,陀螺仪,光传感器以及其他传感器一样。 我找到this example for the samsung gear live,但我找不到Galaxy S5的任何示例。
是否可以直接访问Galaxy S5的心率传感器?有没有人有关于如何做的代码示例?
谢谢。
答案 0 :(得分:1)
使用SensorManager.getDefaultSensor(65562)
直接访问HRM传感器。
答案 1 :(得分:1)
要访问并启用红外灯,请执行以下操作:
用于清单
使用权限android:name =“ android.permission.BODY_SENSORS” />
在活动上实现SensorEventListener
要启用红色红外灯,请使用代码:
public void enableHeartRate(){
SensorManager mSensorManager = ((SensorManager)getSystemService(SENSOR_SERVICE));
Sensor mHeartRateSensor = mSensorManager.getDefaultSensor(Sensor.TYPE_HEART_RATE);
mSensorManager.registerListener(this,mHeartRateSensor, SensorManager.SENSOR_DELAY_NORMAL);
}
@Override
public void onSensorChanged(SensorEvent event) {
if (event.sensor.getType() == Sensor.TYPE_HEART_RATE) {
String msg = "" + (int)event.values[0];
Log.d(TAG, msg);
}else{
Log.d(TAG, "Unknown sensor type");
}
}
@Override
public void onAccuracyChanged(Sensor sensor, int i) {
}
检查日志以获取结果 ;)
答案 2 :(得分:0)
三星发布了名为SensorExtension的SDK。您必须申请,他们会向您发送一封包含zip文件的电子邮件。
答案 3 :(得分:0)
SensorManager.getDefaultSensor(Sensor.TYPE_HEART_RATE)
效果很好。
<强>但是强>
此传感器需要权限android.permission.BODY_SENSORS。它 SensorManager.getSensorsList也不会返回 SensorManager.getDefaultSensor如果应用程序没有这个 权限。
(来自文档)
因此,如果您的读者尝试 getDefaultSensor 而没有成功,则可能是错误。
答案 4 :(得分:0)
您无法从Samsung Galaxy S5获取原始心率监测数据。
传感器扩展SDK需要从Google Android和this page不支持的传感器获取原始数据:
Sensor Extension SDK具有以下限制: