Я создал простое приложение, чтобы узнать, как использовать датчик сердечного ритма с помощью одной кнопки и маркировать вот мой код:андроид студия датчик частоты сердечных сокращений приложение
public class MainActivity extends AppCompatActivity implements SensorEventListener {
Button show;
TextView showHeartRate;
SensorManager sensorMgr;
Sensor heartRate;
String heartRateValue;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
show = (Button) findViewById(R.id.button);
show.setOnClickListener(displayHeartRate);
showHeartRate = (TextView) findViewById(R.id.showHeartRate);
sensorMgr = (SensorManager)this.getSystemService(SENSOR_SERVICE);
heartRate = sensorMgr.getDefaultSensor(Sensor.TYPE_HEART_RATE);
}
View.OnClickListener displayHeartRate = new View.OnClickListener() {
@Override
public void onClick(View view) {
showHeartRate.setText(heartRateValue);
}
};
@Override
protected void onResume() {
super.onResume();
sensorMgr.registerListener(this,heartRate,SensorManager.SENSOR_DELAY_NORMAL);
}
@Override
protected void onPause() {
super.onPause();
sensorMgr.unregisterListener(this);
}
@Override
public void onSensorChanged(SensorEvent sensorEvent) {
heartRateValue = Integer.toString(sensorEvent.sensor.getType());
}
@Override
public void onAccuracyChanged(Sensor sensor, int i) {
}
добавить в манифест:
<uses-permission android:name="android.permission.BODY_SENSORS"/>
проблема заключается в том, что onSensorChanged() не вызывается. Я проверял много решений здесь, но ничего не нашел
я ждать, как 2 минуты держать палец на сенсоре и показать мне пустой –
@Sahar Вануну отредактировал мой ответ, пожалуйста, посмотрите –
его еще нулевой ... –