如何从Android Wear读取心率
我需要在那一刻读取用户的心律。我尝试使用位于Wear项目主要活动中的此代码。
公共类MainActivity扩展WearableActivity实现SensorEventListener { 私有静态最终String TAG =“ MainActivity”;
私人TextView mTextViewHeart;
SensorManager mSensorManager;
传感器mHeartRateSensor;
SensorEventListener sensorEventListener;
@Override
受保护的void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mTextViewHeart =(TextView)findViewById(R.id.heart);
mSensorManager =(((SensorManager)getSystemService(SENSOR_SERVICE));;
mHeartRateSensor = mSensorManager.getDefaultSensor(Sensor.TYPE_HEART_RATE);
mSensorManager.registerListener(this,mHeartRateSensor,SensorManager.SENSOR_DELAY_NORMAL);
Log.i(标签,“ LISTENER已注册。”);
mTextViewHeart.setText(“这里有事”);
mSensorManager.registerListener(sensorEventListener,mHeartRateSensor,mSensorManager.SENSOR_DELAY_FASTEST);
}
公共无效onResume(){
super.onResume();
}
public void onAccuracyChanged(Sensor sensor,int precision){
Log.d(TAG,“ onAccuracyChanged-精度:” +精度);
}
公共无效onSensorChanged(SensorEvent事件){
如果(event.sensor.getType()== Sensor.TYPE_HEART_RATE){
字符串msg =“” +(int)event.values [0];
mTextViewHeart.setText(msg);
Log.d(TAG,msg);
}
其他
Log.d(TAG,“未知传感器类型”);
}
}
这段代码根本无法正常工作,给我一个错误消息:
E / SensorManager:传感器或侦听器为null
如果我使用除心率传感器以外的任何其他功能,它都可以正常工作。
我在用:
- 具有Android API级别23的LG G4
- LG Wear API等级23的LG Urbane手表(我知道有心律传感器)
谢谢您的帮助。
回答:
您在这个问题中看到了同样的问题。我们拥有相同的穿戴设备,因此几乎可以肯定,您
错过了它:
<uses-permission android:name="android.permission.BODY_SENSORS" />
另外,您应该转到“设置”中的“权限”,以检查该权限是否已启用。
您可以在GitHub上检查我的项目,该项目目前正在运行。
以上是 如何从Android Wear读取心率 的全部内容, 来源链接: utcz.com/qa/403048.html