투케이2K

36. (AndroidStudio/android/java) BluetoothAdapter 객체를 사용해 블루투스 지원 여부 및 활성, 비활성 확인 실시 본문

Android

36. (AndroidStudio/android/java) BluetoothAdapter 객체를 사용해 블루투스 지원 여부 및 활성, 비활성 확인 실시

투케이2K 2021. 1. 28. 12:36

/* =========================== */

[ 개발 환경 설정 ]

개발 툴 : AndroidStudio

개발 언어 : java

/* =========================== */

/* =========================== */

[소스 코드]

 

//================== [AndroidManifest.xml 네트워크 연결 상태 확인 퍼미션] ==================
<uses-permission android:name="android.permission.BLUETOOTH"/>



//================== [블루투스 상태 확인 위한 전역 변수 선언 실시] ==================
public static final String BLUETOOTH_DISABLE = "DISABLE";
public static final String BLUETOOTH_ACTIVE = "ACTIVE";
public static final String BLUETOOTH_INACTIVE = "INACTIVE";



//================== [블루투스 상태 확인 메소드 호출] ==================
String bluetoothState = getBluetoothState(); //TODO 블루투스 상태 확인 메소드 호출

if(bluetoothState.equals(BLUETOOTH_DISABLE)){ //TODO 블루투스 지원하지 않는 기기인 경우
	Toast.makeText(getApplication(),"블루투스를 지원하지 않는 기기입니다",Toast.LENGTH_SHORT).show();
}
else if(bluetoothState.equals(BLUETOOTH_INACTIVE)){ //TODO 블루투스 비활성 상태인 경우
	Toast.makeText(getApplication(),"블루투스를 기능이 비활성 상태입니다",Toast.LENGTH_SHORT).show();
}
else if(bluetoothState.equals(BLUETOOTH_ACTIVE)){ //TODO 블루투스 활성 상태인 경우
	Toast.makeText(getApplication(),"블루투스를 기능이 활성 상태입니다",Toast.LENGTH_SHORT).show();
}



//================== [블루투스 상태 확인 메소드] ==================
public String getBluetoothState(){
	try {
		Log.d("---","---");
		Log.d("//===========//","================================================");
		Log.d("","\n"+"[A_Blutooth > getBluetoothState() 메소드 : 블루투스 지원 여부 및 활성, 비활성 확인 실시]");
		Log.d("//===========//","================================================");
		Log.d("---","---");
		/**
		 * [확인 방법]
		 * 1. 블루투스 상태 권한을 획득 실시 - AndroidManifest.xml : <uses-permission android:name="android.permission.BLUETOOTH"/>
		 * 2. BluetoothAdapter 객체를 사용해 블루투스 지원 여부 및 활성, 비활성 확인 실시
		 * 3. 블루투스 지원하지 않는 기기 리턴 값 - DISABLE
		 * 4. 블루투스 비활성 경우 리턴 값 - INACTIVE
		 * 5. 블루투스 활성인 경우 리턴 값 - ACTIVE
		 */
		BluetoothAdapter mBluetoothAdapter = null;
		mBluetoothAdapter = BluetoothAdapter.getDefaultAdapter();
		if(mBluetoothAdapter == null){ //TODO 블루투스를 지원하지 않는 기기인지 확인
			Log.d("---","---");
			Log.e("//===========//","================================================");
			Log.d("","\n"+"[A_Blutooth > 블루투스 지원 기기 확인 : 지원하지 않는 모바일 기기]");
			Log.e("//===========//","================================================");
			Log.d("---","---");
			return BLUETOOTH_DISABLE;
		}
		else { //TODO 블루투스가 켜져있는지 확인 [블루투스 지원 기기]
			Log.d("---","---");
			Log.w("//===========//","================================================");
			Log.d("","\n"+"[A_Blutooth > 블루투스 지원 기기 확인 : 지원하는 모바일 기기]");
			Log.w("//===========//","================================================");
			Log.d("---","---");
			if(mBluetoothAdapter.isEnabled() == true){
				Log.d("---","---");
				Log.w("//===========//","================================================");
				Log.d("","\n"+"[A_Blutooth > 블루투스 기능 활성 확인 : 활성 상태]");
				Log.w("//===========//","================================================");
				Log.d("---","---");
				return BLUETOOTH_ACTIVE;
			}
			else {
				Log.d("---","---");
				Log.e("//===========//","================================================");
				Log.d("","\n"+"[A_Blutooth > 블루투스 기능 활성 확인 : 비활성 상태]");
				Log.e("//===========//","================================================");
				Log.d("---","---");
				return BLUETOOTH_INACTIVE;
			}
		}
	}
	catch (Exception e){
		Log.d("---","---");
		Log.e("//===========//","================================================");
		Log.d("","\n"+"[A_Blutooth > 블루투스 지원 기기 확인 : 지원하지 않는 모바일 기기]");
		Log.d("","\n"+"[Catch 메시지 : "+String.valueOf(e.getMessage())+"]");
		Log.e("//===========//","================================================");
		Log.d("---","---");
		return BLUETOOTH_DISABLE;
	}
}

/* =========================== */

/* =========================== */

[결과 출력]

/* =========================== */

/* =========================== */

[요약 설명]

* 1. 블루투스 상태 권한을 획득 실시 - AndroidManifest.xml : <uses-permission android:name="android.permission.BLUETOOTH"/>

* 2. BluetoothAdapter 객체를 사용해 블루투스 지원 여부 및 활성, 비활성 확인 실시

* 3. 블루투스 지원하지 않는 기기 리턴 값 - DISABLE

* 4. 블루투스 비활성 경우 리턴 값 - INACTIVE

* 5. 블루투스 활성인 경우 리턴 값 - ACTIVE

/* =========================== */

반응형
Comments