Der Sensor in Android --- Magnetfeldsensor

Der Magnetfeldsensor ist derselbe wie der Beschleunigungsmesser (ich spreche vom Abrufen von Daten).

Der Magnetfeldsensor von Android, Magnetic Field. . Lesen Sie die Änderung des Magnetfelds und verwenden Sie diesen Sensor, um Magnetfeldanwendungen wie Kompass und Kompass zu entwickeln. Die vom Sensor gelesenen Daten sind der Magnetfeldwert in drei Richtungen des Raumkoordinatensystems, und seine Dateneinheit ist uT, also Mikro-Tesla.

public class MagneticFieldActivity extends AppCompatActivity implements SensorEventListener {

    private SensorManager sensorManager;
    private Sensor sensor;
    private TextView mMagneticField;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_magnetic_field);
        mMagneticField=findViewById(R.id.tv_magnetic_field);
        sensorManager= (SensorManager) getSystemService(Context.SENSOR_SERVICE);
        sensor=sensorManager.getDefaultSensor(Sensor.TYPE_MAGNETIC_FIELD);
    }

    @Override
    protected void onResume() {
        super.onResume();
        if (sensorManager!=null){
            sensorManager.registerListener(this,sensor,SensorManager.SENSOR_DELAY_UI);
        }
    }

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

    @Override
    public void onSensorChanged(SensorEvent event) {
        // 传感器返回的数据
        float x=event.values[0];
        float y=event.values[1];
        float z=event.values[2];
        StringBuffer buffer = new StringBuffer();
        buffer.append("X方向的磁场为:").append(String.format("%.2f", x)).append("\n");
        buffer.append("Y方向的磁场为:").append(String.format("%.2f", y)).append("\n");
        buffer.append("Z方向的磁场为:").append(String.format("%.2f", z)).append("\n");
        mMagneticField.setText(buffer);
    }

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

    }
}

 

Guess you like

Origin blog.csdn.net/lanrenxiaowen/article/details/108059598