Example usage for android.hardware Sensor TYPE_HEART_RATE

List of usage examples for android.hardware Sensor TYPE_HEART_RATE

Introduction

In this page you can find the example usage for android.hardware Sensor TYPE_HEART_RATE.

Prototype

int TYPE_HEART_RATE

To view the source code for android.hardware Sensor TYPE_HEART_RATE.

Click Source Link

Document

A constant describing a heart rate monitor.

Usage

From source file:Main.java

public static boolean startHeartMonitor(SensorEventListener listener, int delay) {
    Sensor heartSensor = getSensor(Sensor.TYPE_HEART_RATE);
    if (heartSensor != null) {
        sensorManager.registerListener(new SensorEventListener() {
            @Override/*from w  ww.  j  av  a 2s. co  m*/
            public void onSensorChanged(SensorEvent event) {

            }

            @Override
            public void onAccuracyChanged(Sensor sensor, int accuracy) {

            }
        }, heartSensor, delay);
    }
    return false;
}

From source file:Main.java

@SuppressWarnings("deprecation")
public static String getSensorTypeStr(int type) {
    switch (type) {
    case Sensor.TYPE_ALL://-1
        return "TYPE_ALL";
    //Accelerometer sensor type
    case Sensor.TYPE_ACCELEROMETER://1
        return "TYPE_ACCELEROMETER";
    //Magnetic field sensor type
    case Sensor.TYPE_MAGNETIC_FIELD://2
        return "TYPE_MAGNETIC_FIELD";
    //Orientation sensor type
    case Sensor.TYPE_ORIENTATION://3
        return "TYPE_ORIENTATION";
    //Gyroscope sensor type
    case Sensor.TYPE_GYROSCOPE://4
        return "TYPE_GYROSCOPE";
    //Light sensor type
    case Sensor.TYPE_LIGHT://5
        return "TYPE_LIGHT";
    //Pressure sensor type
    case Sensor.TYPE_PRESSURE://6
        return "TYPE_PRESSURE";
    //Temperature sensor type
    case Sensor.TYPE_TEMPERATURE://7
        return "TYPE_TEMPERATURE";
    //Proximity sensor type
    case Sensor.TYPE_PROXIMITY://8
        return "TYPE_PROXIMITY";
    //Gravity sensor type
    case Sensor.TYPE_GRAVITY://9
        return "TYPE_GRAVITY";
    //Linear acceleration sensor type
    case Sensor.TYPE_LINEAR_ACCELERATION://10
        return "TYPE_LINEAR_ACCELERATION";
    //Rotation vector sensor type
    case Sensor.TYPE_ROTATION_VECTOR://11
        return "TYPE_ROTATION_VECTOR";
    //Relative humidity sensor type
    case Sensor.TYPE_RELATIVE_HUMIDITY://12
        return "TYPE_RELATIVE_HUMIDITY";
    //Ambient temperature sensor type
    case Sensor.TYPE_AMBIENT_TEMPERATURE://13
        return "TYPE_AMBIENT_TEMPERATURE";
    //Uncalibrated magnetic field sensor type
    case Sensor.TYPE_MAGNETIC_FIELD_UNCALIBRATED://14
        return "TYPE_MAGNETIC_FIELD_UNCALIBRATED";
    //Uncalibrated rotation vector sensor type
    case Sensor.TYPE_GAME_ROTATION_VECTOR://15
        return "TYPE_GAME_ROTATION_VECTOR";
    //Uncalibreted gyroscope sensor type
    case Sensor.TYPE_GYROSCOPE_UNCALIBRATED://16
        return "TYPE_GYROSCOPE_UNCALIBRATED";
    //Significant motion trigger sensor
    case Sensor.TYPE_SIGNIFICANT_MOTION://17
        return "TYPE_SIGNIFICANT_MOTION";
    //Step detector sensor
    case Sensor.TYPE_STEP_DETECTOR://18
        return "TYPE_STEP_DETECTOR";
    //Step counter sensor
    case Sensor.TYPE_STEP_COUNTER://19
        return "TYPE_STEP_COUNTER";
    //Geo-magnetic rotation vector
    case Sensor.TYPE_GEOMAGNETIC_ROTATION_VECTOR://20
        return "TYPE_GEOMAGNETIC_ROTATION_VECTOR";
    //Heart rate monitor
    case Sensor.TYPE_HEART_RATE://21
        return "TYPE_HEART_RATE";
    default://  w  w w .j a  va2  s . co  m
        return UNKNOWN;
    }
}

From source file:rus.cpuinfo.AndroidDepedentModel.SensorsInfo.java

@Override
@SuppressLint("NewApi")
@NonNull// ww w  .  j  a  v a  2s.c  o  m
public String getInfo(int query) {

    int type;

    switch (query) {
    case SENSOR_ACCELEROMETR:
        type = Sensor.TYPE_ACCELEROMETER;
        break;
    case SENSOR_AMBIENT_TEMPERATURE:
        type = Sensor.TYPE_AMBIENT_TEMPERATURE;
        break;
    case SENSOR_LINEAR_ACCELERATION:
        type = Sensor.TYPE_LINEAR_ACCELERATION;
        break;
    case SENSOR_LIGHT:
        type = Sensor.TYPE_LIGHT;
        break;
    case SENSOR_MAGNETIC_FIELD:
        type = Sensor.TYPE_MAGNETIC_FIELD;
        break;
    case SENSOR_ROTATION_VECTOR:
        type = Sensor.TYPE_ROTATION_VECTOR;
        break;
    case SENSOR_TYPE_GRAVITY:
        type = Sensor.TYPE_GRAVITY;
        break;
    case SENSOR_TYPE_GYROSCOPE:
        type = Sensor.TYPE_GYROSCOPE;
        break;
    case SENSOR_PROXIMITY:
        type = Sensor.TYPE_PROXIMITY;
        break;
    case SENSOR_PRESSURE:
        type = Sensor.TYPE_PRESSURE;
        break;
    case SENSOR_RELATIVE_HUMIDITY:
        type = Sensor.TYPE_RELATIVE_HUMIDITY;
        break;
    case SENSOR_TEMPERATURE:
        type = Sensor.TYPE_AMBIENT_TEMPERATURE;
        break;
    case SENSOR_HUMIDITY:
        type = Sensor.TYPE_RELATIVE_HUMIDITY;
        break;
    case SENSOR_ORIENTATION:
        type = Sensor.TYPE_ORIENTATION;
        break;
    case SENSOR_HEART_RATE:
        type = Sensor.TYPE_HEART_RATE;
        break;
    case SENSOR_SIGNIFICANT_MOTION:
        type = Sensor.TYPE_SIGNIFICANT_MOTION;
        break;
    case SENSOR_GEOMAGNETIC_ROTATION_VECTOR:
        type = Sensor.TYPE_GEOMAGNETIC_ROTATION_VECTOR;
        break;
    case SENSOR_STEP_COUNTER:
        type = Sensor.TYPE_STEP_COUNTER;
        break;
    case SENSOR_STEP_DETECTOR:
        type = Sensor.TYPE_STEP_DETECTOR;
        break;
    case SENSOR_GAME_ROTATION_VECTOR:
        type = Sensor.TYPE_GAME_ROTATION_VECTOR;
        break;
    default:
        throw new IllegalArgumentException("Query must be with \"SENSOR.\" prefix");
    }
    return getSensorName(type);
}

From source file:it.cnr.isti.doremi.sleeplogger.SensorSamplingService.java

@Override
public void onCreate() {
    super.onCreate();
    Log.i(TAG, "onCreate()");

    mSensorManager = ((SensorManager) getSystemService(SENSOR_SERVICE));

    /*for (Sensor s : mSensorManager.getSensorList(Sensor.TYPE_ALL)) // print all the available sensors
    {//from ww  w .  ja  v a2s .c  o  m
       Log.d(TAG, "Sensor: " + s.getName() + ", type = " + s.getType());
    }*/

    // Use SENSOR_TYPE_HEARTRATE_GEAR_LIVE below to have a better accuracy (only for Samsung Gear Live)
    mHeartRateSensor = mSensorManager.getDefaultSensor(Sensor.TYPE_HEART_RATE);
    selHB = new SensorEventListener() {
        @Override
        public void onSensorChanged(SensorEvent sensorEvent) {
            lastHB = sensorEvent.values[0];
        }

        @Override
        public void onAccuracyChanged(Sensor sensor, int i) {
        }
    };
    mSensorManager.registerListener(selHB, this.mHeartRateSensor, 500000); // Forced to 0.5s

    mAccelerationSensor = mSensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER);
    selAcc = new SensorEventListener() {
        @Override
        public void onSensorChanged(SensorEvent sensorEvent) {
            lastAcc = sensorEvent.values;
        }

        @Override
        public void onAccuracyChanged(Sensor sensor, int i) {
        }
    };
    mSensorManager.registerListener(selAcc, this.mAccelerationSensor, SAMPLING_INTERVAL * 750); // sampling interval * 0.75

    // ENABLE IF REQUIRED
    /*      mGyroscopeSensor = mSensorManager.getDefaultSensor(Sensor.TYPE_GYROSCOPE);
          selGyroscope = new SensorEventListener() {
             @Override
             public void onSensorChanged(SensorEvent sensorEvent) { lastGyro = sensorEvent.values; }
            
             @Override
             public void onAccuracyChanged(Sensor sensor, int i) {}
          };
          mSensorManager.registerListener(selGyroscope, this.mGyroscopeSensor, SAMPLING_INTERVAL * 1000);
            
          mOrientationSensor = mSensorManager.getDefaultSensor(Sensor.TYPE_ORIENTATION);
          selOrientation = new SensorEventListener() {
             @Override
             public void onSensorChanged(SensorEvent sensorEvent) { lastOrientation = sensorEvent.values; }
            
             @Override
             public void onAccuracyChanged(Sensor sensor, int i) {}
          };
          mSensorManager.registerListener(selOrientation, this.mOrientationSensor, SAMPLING_INTERVAL * 1000);
            
          mStepSensor = mSensorManager.getDefaultSensor(Sensor.TYPE_STEP_COUNTER);
          selStep = new SensorEventListener() {
             @Override
             public void onSensorChanged(SensorEvent sensorEvent) { lastStepCount = sensorEvent.values[0]; }
            
             @Override
             public void onAccuracyChanged(Sensor sensor, int i) {}
          };
          mSensorManager.registerListener(selStep, this.mStepSensor, 1000000); // Forced to 1s
    */
    File logFile = new File(Environment.getExternalStorageDirectory() + File.separator + "logs" + File.separator
            + "hb_log-" + sdf.format(new Date()) + ".txt");
    try {
        logFile.getParentFile().mkdirs();
        logFile.createNewFile();
    } catch (IOException e) {
        e.printStackTrace();
        System.exit(1);
    }

    try {
        Log.d(TAG, "Log saved to : " + logFile.getAbsolutePath());
        bw = new BufferedWriter(new FileWriter(logFile));
        bw.write(String.format(Locale.ENGLISH, LOG_HEADER));
    } catch (Exception e) {
        e.printStackTrace();
    }

    powerManager = (PowerManager) getSystemService(POWER_SERVICE);
    wakeLock = powerManager.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "SensorSamplingServiceWakeLock");
}

From source file:foam.starwisp.StarwispActivity.java

protected void DeclareSensors() {
    String str = "";
    str += "(define sensor-accelerometer " + Sensor.TYPE_ACCELEROMETER + ")";
    str += "(define sensor-ambient-temperature " + Sensor.TYPE_AMBIENT_TEMPERATURE + ")";
    str += "(define sensor-game-rotation-vector " + Sensor.TYPE_GAME_ROTATION_VECTOR + ")";
    str += "(define sensor-geomagnetic-rotation-vector " + Sensor.TYPE_GEOMAGNETIC_ROTATION_VECTOR + ")";
    str += "(define sensor-gravity " + Sensor.TYPE_GRAVITY + ")";
    str += "(define sensor-gyroscope " + Sensor.TYPE_GYROSCOPE + ")";
    str += "(define sensor-gyroscope-uncalibrated " + Sensor.TYPE_GYROSCOPE_UNCALIBRATED + ")";
    str += "(define sensor-heart-rate " + Sensor.TYPE_HEART_RATE + ")";
    str += "(define sensor-light " + Sensor.TYPE_LIGHT + ")";
    str += "(define sensor-linear-acceleration " + Sensor.TYPE_LINEAR_ACCELERATION + ")";
    str += "(define sensor-magnetic-field " + Sensor.TYPE_MAGNETIC_FIELD + ")";
    str += "(define sensor-magnetic-field-uncalibrated " + Sensor.TYPE_MAGNETIC_FIELD_UNCALIBRATED + ")";
    str += "(define sensor-orientation " + Sensor.TYPE_ORIENTATION + ")";
    str += "(define sensor-pressure " + Sensor.TYPE_PRESSURE + ")";
    str += "(define sensor-proximity " + Sensor.TYPE_PROXIMITY + ")";
    str += "(define sensor-relative-humidity " + Sensor.TYPE_RELATIVE_HUMIDITY + ")";
    str += "(define sensor-rotation-vector " + Sensor.TYPE_ROTATION_VECTOR + ")";
    str += "(define sensor-significant-motion " + Sensor.TYPE_SIGNIFICANT_MOTION + ")";
    str += "(define sensor-step-counter " + Sensor.TYPE_STEP_COUNTER + ")";
    str += "(define sensor-step-detector " + Sensor.TYPE_STEP_DETECTOR + ")";
    m_Scheme.eval(str);/*from   w ww .j av a 2  s. c  om*/
}