bluetooth chat 예제

août 2, 2019 7:53 Publié par

여러 장치를 성공적으로 연결한 후에는 각 장치에 연결된 BluetoothSocket이 있습니다. 장치 간에 정보를 공유할 수 있기 때문에 재미가 시작되는 곳입니다. BluetoothSocket을 사용하여 데이터를 전송하는 일반적인 절차는 다음과 같습니다: Android 플랫폼에는 Bluetooth 네트워크 스택에 대한 지원이 포함되어 있어 장치가 다른 Bluetooth 장치와 무선으로 데이터를 교환할 수 있습니다. 응용 프로그램 프레임 워크는 안드로이드 블루투스 API를 통해 블루투스 기능에 대한 액세스를 제공합니다. 이러한 API를 사용하면 애플리케이션이 다른 Bluetooth 장치에 무선으로 연결되므로 지점 간 및 멀티포인트 무선 기능을 사용할 수 있습니다. 이 예제는 블루투스 채팅 예제와 관련하여만 작동합니다. 블루투스 채팅 예제는 채팅 서비스를 시작하고 블루투스 SDP 프로토콜을 통해 광고합니다. Bluetooth Chat 예제를 실행하는 장치가 SDP 서비스를 적극적으로 광고하는 것이 중요합니다. QBluetoothLocalDevice::hostMode 속성을 사용하여 확인할 수 있습니다. 안녕 이것은 환상적인 코드하지만 난 그냥 내가 또한 다른 활동에 사용할 수 있도록 백그라운드 서비스로 BluetoothChatService를 사용하는 방법을 알고 싶어요. accept() 호출은 차단 호출이므로 응용 프로그램이 다른 사용자 상호 작용에 계속 응답할 수 있도록 기본 활동 UI 스레드에서 실행되어서는 안 됩니다.

일반적으로 응용 프로그램에서 관리하는 새 스레드에서 BluetoothServerSocket 또는 BluetoothSocket과 관련된 모든 작업을 수행하는 것이 좋습니다. 수락() 과 같은 차단된 호출을 중단하려면 다른 스레드에서 BluetoothServerSocket 또는 BluetoothSocket에서 close()를 호출합니다. BluetoothServer소켓 또는 Bluetooth소켓의 모든 방법은 스레드에서 사용할 수 있습니다. Bluetooth API 사용 데모는 Bluetooth Chat 샘플 앱을 참조하십시오. 이 프로세스를 검색, 문의 또는 검색이라고도 합니다. 그러나 근처의 Bluetooth 장치는 현재 검색 가능으로 정보 요청을 수락하는 경우에만 검색 요청에 응답합니다. 장치를 검색할 수 있는 경우 장치 이름, 해당 클래스 및 고유한 MAC 주소와 같은 일부 정보를 공유하여 검색 요청에 응답합니다. 이 정보를 사용하여 검색 프로세스를 수행하는 장치는 검색된 장치에 대한 연결을 시작하도록 선택할 수 있습니다.

accept()가 BluetoothSocket을 반환하면 소켓이 이미 연결되어 있습니다. 따라서 클라이언트 측에서와 마찬가지로 connect()를 호출해서는 안 됩니다. Bluetooth QML 채팅 예제에서는 두 당사자 간의 간단한 채팅 프로그램을 구현합니다. 응용 프로그램은 클라이언트 역할을 하며 Bluetooth 소켓 서버에 연결하려고 시도합니다.

Classés dans :Non classé

Cet article a été écrit par NotreSite

Les commentaires sont fermés.