Skip to content

Instantly share code, notes, and snippets.

@josefadamcik
Created August 7, 2018 10:15
Show Gist options
  • Select an option

  • Save josefadamcik/1a890b9b62afa52572c320b878c88d7e to your computer and use it in GitHub Desktop.

Select an option

Save josefadamcik/1a890b9b62afa52572c320b878c88d7e to your computer and use it in GitHub Desktop.

Revisions

  1. josefadamcik created this gist Aug 7, 2018.
    59 changes: 59 additions & 0 deletions MainActivity.java
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,59 @@
    package cz.josefadamcik.compassexperiment;

    import androidx.appcompat.app.AppCompatActivity;

    import android.content.Context;
    import android.hardware.Sensor;
    import android.hardware.SensorEvent;
    import android.hardware.SensorEventListener;
    import android.hardware.SensorManager;
    import android.os.Bundle;
    import android.util.Log;

    public class MainActivity extends AppCompatActivity implements SensorEventListener {
    Sensor sensor;
    private SensorManager sensorManager;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    sensorManager = (SensorManager) getSystemService(Context.SENSOR_SERVICE);
    }

    @Override
    protected void onResume() {
    super.onResume();
    sensor = sensorManager.getDefaultSensor(Sensor.TYPE_ORIENTATION);
    boolean registered = false;
    if (sensor != null) {
    registered = sensorManager.registerListener(this, sensor, SensorManager.SENSOR_DELAY_UI);
    }
    Log.d("BUBU", String.format("Registered sensor %s", registered));
    }

    @Override
    protected void onPause() {
    super.onPause();
    if (sensor != null) {
    sensorManager.unregisterListener(this, sensor);
    sensor = null;
    }
    }

    @Override
    public void onSensorChanged(SensorEvent sensorEvent) {
    Log.d("BUBU", String.format("%s %s %s %s %s",
    sensorEvent.accuracy,
    sensorEvent.values[0],
    sensorEvent.values[1],
    sensorEvent.values[2],
    sensorEvent.timestamp
    ));
    }

    @Override
    public void onAccuracyChanged(Sensor sensor, int i) {
    Log.d("BUBU", "on accuracy changed");
    }
    }