我需要在此刻读取用户的心率。我尝试使用位于Wear项目主要活动中的代码。如何阅读Android Wear的心率
public class MainActivity extends WearableActivity implements SensorEventListener { private static final String TAG = "MainActivity"; private TextView mTextViewHeart; SensorManager mSensorManager; Sensor mHeartRateSensor; SensorEventListener sensorEventListener; @Override protected 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(TAG, "LISTENER REGISTERED."); mTextViewHeart.setText("Something here"); mSensorManager.registerListener(sensorEventListener, mHeartRateSensor, mSensorManager.SENSOR_DELAY_FASTEST); } public void onResume(){ super.onResume(); } public void onAccuracyChanged(Sensor sensor, int accuracy) { Log.d(TAG, "onAccuracyChanged - accuracy: " + accuracy); } public void onSensorChanged(SensorEvent event) { if (event.sensor.getType() == Sensor.TYPE_HEART_RATE) { String msg = "" + (int)event.values[0]; mTextViewHeart.setText(msg); Log.d(TAG, msg); } else Log.d(TAG, "Unknown sensor type"); } }
这段代码根本就没有工作,给我一个错误说:
E/SensorManager﹕ sensor or listener is null
如果我用别的,但心脏速率传感器,它工作正常。
我使用:
- LG G4与Android API级别23
- LG文雅的腕表(我知道有一个心脏速率传感器)由于磨损API级别23
谢谢您的帮助。
试试这个问题... http://stackoverflow.com/questions/26489281/how-to-access-heart-rate-sensor-in-android-wearable –