Computer >> 컴퓨터 >  >> 프로그래밍 >> Android

안드로이드 기기가 LOW LATENCY OFFBODY DETECT 센서를 지원하는지 확인하는 방법

이 예제에서는 안드로이드 모바일 기기가 LOW LATENCY OFFBODY DETECT(저지연 오프바디 감지) 센서를 지원하는지 확인하는 방법을 단계별로 살펴봅니다.

TYPE_LOW_LATENCY_OFFBODY_DETECT 센서는 웨어러블 기기 등에서 사용자가 기기를 착용하고 있는지 여부를 낮은 지연 시간으로 감지할 수 있는 센서입니다. 이 센서의 지원 여부는 SensorManager를 통해 간단하게 확인할 수 있습니다.

1단계: 새 프로젝트 생성

Android Studio에서 File → New Project를 선택한 후, 새 프로젝트 생성에 필요한 모든 세부 정보를 입력하여 새 프로젝트를 만듭니다.

2단계: 레이아웃 파일 작성

다음 코드를 res/layout/activity_main.xml에 추가합니다.

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="https://schemas.android.com/apk/res/android"
    xmlns:app="https://schemas.android.com/apk/res-auto"
    xmlns:tools="https://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:gravity="center"
    android:layout_height="match_parent"
    tools:context=".MainActivity"
    android:orientation="vertical">
    <TextView
        android:id="@+id/actionEvent"
        android:textSize="40sp"
        android:layout_marginTop="30dp"
        android:layout_width="wrap_content"
        android:layout_height="match_parent" />
</LinearLayout>

위 코드에서는 LOW LATENCY OFFBODY DETECT 센서의 지원 여부 정보를 화면에 표시하기 위해 TextView를 사용했습니다.

3단계: MainActivity 작성

다음 코드를 src/MainActivity.java에 추가합니다.

package com.example.myapplication;
import android.annotation.SuppressLint;
import android.content.Context;
import android.hardware.Sensor;
import android.hardware.SensorManager;
import android.os.Build;
import android.os.Bundle;
import android.support.annotation.RequiresApi;
import android.support.v7.app.AppCompatActivity;
import android.widget.TextView;
public class MainActivity extends AppCompatActivity {
    TextView textView;
    private SensorManager sensorManager;
    @SuppressLint({"RestrictedApi", "ClickableViewAccessibility"})
    @RequiresApi(api = Build.VERSION_CODES.N)
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        TextView actionEvent = findViewById(R.id.actionEvent);
        sensorManager = (SensorManager) getSystemService(Context.SENSOR_SERVICE);
        if (sensorManager.getDefaultSensor(Sensor.TYPE_LOW_LATENCY_OFFBODY_DETECT) != null) {
            actionEvent.setText("LOW LATENCY OFFBODY DETECT sensor supports");
        } else {
            actionEvent.setText("no LOW LATENCY OFFBODY DETECT sensor supports");
        }
    }
}

앱 실행 및 결과 확인

이제 애플리케이션을 실행해 보겠습니다. 실제 안드로이드 모바일 기기가 컴퓨터에 연결되어 있다고 가정합니다. Android Studio에서 프로젝트의 액티비티 파일 중 하나를 열고 툴바에서 Run 아이콘을 클릭하세요. 실행 옵션으로 자신의 모바일 기기를 선택하면, 모바일 기기에 아래와 같은 기본 화면이 표시됩니다.

안드로이드 기기가 LOW LATENCY OFFBODY DETECT 센서를 지원하는지 확인하는 방법

기기가 해당 센서를 지원하는 경우 "LOW LATENCY OFFBODY DETECT sensor supports"라는 메시지가 표시되고, 지원하지 않는 경우에는 "no LOW LATENCY OFFBODY DETECT sensor supports" 메시지가 나타납니다. 참고로 이 센서는 API 26(Android 8.0)부터 추가된 상수이므로, 하위 버전을 대상으로 하는 경우 빌드 버전 체크를 함께 처리해 주는 것이 좋습니다.