React-native bluetooth device detection

현재 개발중인 앱 상에서 블루투스 마이크/헤드셋 연결 여부를 스크린에 표기해 달라는 요청이 있었다.
블루투스 연결/해제를 앱 상에서 할 필요는 없고 연결이 잘 되어 있는지만 확인하면 되기 아래 두 가지 정도가 적합할 것 같았다.

첫 번째 라이브러리는 원인을 확실히 알 수 없지만, 현재 앱이 구동되는 디바이스의 안드로이드 버전이 너무 낮아서(android 5.0) 그런 것인지 에러가 발생해서 두번째 라이브러리를 사용하기로 했다.

적용을 위해서는 권한 허가를 해줘야 하므로
node_modules안 해당 파일 내 AndroidManifest.xml 파일 내에 아래 권한들을 추가해준다.

<uses-permission android:name="android.permission.BLUETOOTH_ADMIN"/>
<uses-permission android:name="android.permission.BLUETOOTH" />

실시간으로 연결상태를 업데이트 하려면 라이브러리의 커스텀훅을 사용해준다.

import {useHeadphonesDetection} from 'react-native-headphone-detection';

const headphonesDetection = useHeadphonesDetection();

  useEffect(() => {
    console.log('check bluetoothConnection change--->', headphonesDetection);

  }, [headphonesDetection]);

좋은 웹페이지 즐겨찾기