기기의 사용 가능한 센서 확인하는 코드
센서 코드 짜기전에 무조건 확인하는것이 좋음,,
MainActivity.java
package com.example.mysensortest;
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.widget.TextView;
public class MainActivity extends AppCompatActivity {
private SensorManager mSensorManager;
TextView tv_temperature;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
StringBuffer sb = new StringBuffer("");
tv_temperature = findViewById(R.id.tv_temperature);
mSensorManager = (SensorManager) getSystemService(Context.SENSOR_SERVICE);
if (mSensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER) != null) {
sb.append("Sensor.TYPE_ACCELEROMETER\n");
} else { // Failure! No magnetometer.
}
if (mSensorManager.getDefaultSensor(Sensor.TYPE_AMBIENT_TEMPERATURE) != null) {
sb.append("Sensor.TYPE_AMBIENT_TEMPERATURE\n");
} else {// Failure! No magnetometer.
}
if (mSensorManager.getDefaultSensor(Sensor.TYPE_GRAVITY) != null) {
sb.append("Sensor.TYPE_GRAVITY\n");
} else {// Failure! No magnetometer.
}
if (mSensorManager.getDefaultSensor(Sensor.TYPE_GYROSCOPE) != null) {
sb.append("Sensor.TYPE_GYROSCOPE\n");
} else {// Failure! No magnetometer.
}
if (mSensorManager.getDefaultSensor(Sensor.TYPE_LIGHT) != null) {
sb.append("Sensor.TYPE_LIGHT\n");
} else {// Failure! No magnetometer.
}
if (mSensorManager.getDefaultSensor(Sensor.TYPE_LINEAR_ACCELERATION) != null) {
sb.append("Sensor.TYPE_LINEAR_ACCELERATION\n");
} else {// Failure! No magnetometer.
}
if (mSensorManager.getDefaultSensor(Sensor.TYPE_MAGNETIC_FIELD) != null) {
sb.append("Sensor.TYPE_MAGNETIC_FIELD\n");
} else {// Failure! No magnetometer.
}
if (mSensorManager.getDefaultSensor(Sensor.TYPE_ORIENTATION) != null) {
sb.append("Sensor.TYPE_ORIENTATION\n");
} else {// Failure! No magnetometer.
}
if (mSensorManager.getDefaultSensor(Sensor.TYPE_PRESSURE) != null) {
sb.append("Sensor.TYPE_PRESSURE\n");
} else {// Failure! No magnetometer.
}
if (mSensorManager.getDefaultSensor(Sensor.TYPE_PROXIMITY) != null) {
sb.append("Sensor.TYPE_PROXIMITY\n");
} else {// Failure! No magnetometer.
}
if (mSensorManager.getDefaultSensor(Sensor.TYPE_RELATIVE_HUMIDITY) != null) {
sb.append("Sensor.TYPE_RELATIVE_HUMIDITY\n");
} else {// Failure! No magnetometer.
}
if (mSensorManager.getDefaultSensor(Sensor.TYPE_ROTATION_VECTOR) != null) {
sb.append("Sensor.TYPE_ROTATION_VECTOR\n");
} else {// Failure! No magnetometer.
}
if (mSensorManager.getDefaultSensor(Sensor.TYPE_TEMPERATURE) != null) {
sb.append("Sensor.TYPE_TEMPERATURE\n");
} else {// Failure! No magnetometer.
}
tv_temperature.setText(sb.toString());
}
}
'PROGRAMMING CODE > ANDROID STUDIO' 카테고리의 다른 글
[Android Studio] 라즈베리, 안드로이드 스튜디오 블루투스 통신 (안드로이드 스튜디오 코드 2021기준 최신본 / 주석) (0) | 2021.12.05 |
---|---|
[Android Studio] Activity 생명주기 (0) | 2021.12.05 |
[Android Studio] 신경쓰지 않아도 되는 로그캣 오류 (계속 업데이트) (0) | 2021.12.04 |