안드로이드 블루투스 ble 예제

이 문서에서 사용되는 예제에서는 Android 앱(Android 장치에서 실행 중)이 GATT 클라이언트입니다. 앱은 GATT 서버에서 데이터를 가져옵니다. 그러나 GATT 서버 역할을 하도록 Android 앱을 디자인할 수도 있습니다. 자세한 내용은 블루투스가트 서버를 참조하십시오. 특정 콜백이 트리거되면 적절한 broadcastUpdate() 도우미 메서드를 호출하고 작업을 전달합니다. 이 섹션의 데이터 구문 분석은 Bluetooth 심박수 측정 프로필 사양에 따라 수행됩니다. BluetoothAdapter는 장치의 자체 블루투스 어댑터(블루투스 라디오)를 나타냅니다. 전체 시스템에 하나의 Bluetooth 어댑터가 있으며 응용 프로그램이 이 개체를 사용하여 상호 작용할 수 있습니다. 아래 코드 조각은 어댑터를 얻는 방법을 보여줍니다. 이 방법은 getSystemService()를 사용하여 BluetoothManager의 인스턴스를 반환한 다음 어댑터를 얻는 데 사용됩니다. Android 4.3(API 수준 18)에서는 BluetoothManager를 소개합니다. BLE 장치의 GATT 서버에 연결하려면 connectGatt() 메서드를 사용합니다. 이 메서드는 컨텍스트 개체, 자동 연결(사용 가능하자마자 BLE 장치에 자동으로 연결할지 여부를 나타내는 부울) 및 BluetoothGattCallback: BLE 장치에 대한 참조: BLE 장치는 지속적으로 절전 모드로 유지됩니다.

연결이 시작되는 경우를 제외하고. 블루투스가 ~ 100ms 소요하는 동안 실제 연결 시간은 몇 ms입니다. 연결이 짧은 이유는 데이터 속도가 1Mb/s로 높기 때문입니다. 구별을 이해하려면 Android 전화와 BLE 장치인 활동 추적기가 있다고 가정해 보십시오. 전화는 중앙 역할을 지원합니다. 활동 추적기는 주변 장치 역할을 지원합니다(BLE 연결을 설정하려면 각각 둘 중 하나가 필요하며, 주변 장치만 서로 통신할 수 없고 중앙에서만 지원하는 두 가지 도 수행할 수 없는 두 가지 중 하나가 필요합니다). 이 샘플에서는 Gradle 빌드 시스템을 사용합니다. 이 프로젝트를 빌드하려면 “gradlew 빌드” 명령을 사용하거나 Android Studio에서 “프로젝트 가져오기”를 사용합니다. 지정된 Bluetooth LE 장치에서 호스팅되는 GATT 서버와의 연결 및 데이터 통신을 관리하는 서비스를 만듭니다. 응용 프로그램에서 Bluetooth 기능을 사용하려면 Bluetooth 권한 Bluetooth를 선언해야 합니다. 연결 요청, 연결 수락 및 데이터 전송과 같은 Bluetooth 통신을 수행하려면 이 권한이 필요합니다.