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

참고: 블루투스 LE 장치에 대해서만 스캔하거나 Bluetooth에 설명된 대로 클래식 블루투스 장치에 대해서만 스캔할 수 있습니다. Bluetooth LE와 클래식 장치를 동시에 스캔할 수 없습니다. BLE : 안드로이드 내장 플랫폼은 장치를 발견, 요청하고 우리의 블루투스 장치에서 정보를 전송합니다. 저작권 2017 안드로이드 오픈 소스 프로젝트, Inc. 당신은 안드로이드에 장치에서 메시지를 읽는 방법을 보여줍니다 당신은 우리가 측정을 표시하는 심장 박동 센서에 우리의 안드로이드 응용 프로그램을 연결합니다 devece 감사에 안드로이드에서 메시지를 작성하는 방법을 보여 줄 수 있습니다. 여기는 우리가 사용 하려고 하는 서비스와 특성에 대 한 요약 된 블루투스 사양입니다. 연결 요청, 연결 수락 및 데이터 전송을 수행하려면 BLUETOOTH 권한이 필요합니다. 또한 장치 검색에 대한 BLUETOOTH_ADMIN 권한을 선언하거나 Bluetooth 설정을 조작해야 합니다. 블루투스 기능을 사용하여 응용 프로그램에 연결하여 특성을 읽고 쓰고, 특성이 변경될 때 알림을 구독하고, 중앙 역할의 장치 스캔을 읽고 쓰기, 배터리 레벨의 보급 알림을 찾고 있습니다. Detector.주변 장치의 장치는 배터리 레벨을 광고합니다. 이 예에서 Android 장치에서 실행되는 Android 앱은 GATT 클라이언트입니다. 응용 프로그램은 배터리 수준 서비스를 지원하는 BLE 배터리 수준 검출기인 GATT 서버에서 데이터를 가져옵니다. 우리는 모든 서비스 및 특성을 반복하고 특성에 대한 알림을 활성화 한 다음 우리의 서비스에 정의 된 BluetoothGatt 개체에 기록합니다.

이 샘플에서는 Gradle 빌드 시스템을 사용합니다. 이 프로젝트를 빌드하려면 “gradlew 빌드” 명령을 사용하거나 Android Studio에서 “프로젝트 가져오기”를 사용합니다. 블루투스가 켜지면 장치가 마시멜로에서 실행중인지 또는 그 이상에서 실행중인지 확인해야 하며, 런타임에 요청하여 위치 서비스도 켜야 합니다. 그렇지 않으면 BLE 검색이 장치를 감지하지 못합니다. Android 6.0 이상을 사용하는 경우 GPS를 켜야 합니다. 세부 정보: http://stackoverflow.com/questions/33013818/bluetoothlescanner-startscan-with-android-6-0-not-not-discover-device 클래식 블루투스와 는 달리, 블루투스 저에너지(BLE)는 상당히 낮은 전력을 제공하도록 설계되었습니다. 소비. 이를 통해 Android 앱은 근접 센서, 심박수 모니터 및 피트니스 장치와 같이 더 엄격한 전력 요구 사항이 있는 BLE 장치와 통신할 수 있습니다.

특정 유형의 주변 장치만 검색하려면 대신 startLeScan(UUID[], BluetoothAdapter.LeScanCallback)을 호출하여 앱에서 지원하는 GATT 서비스를 지정하는 UUID 개체 배열을 제공할 수 있습니다.