2013-04-28 1 views
4

지금까지 안드로이드 폰에서 여러 기기와 통신하는 것이 가능하다는 것을 알고 있습니다. 하지만 내 경우에는 두 개의 '유사한'장치를 연결하려고합니다.Android에서 블루투스에 여러 기기 연결하기

2 개의 장치를 연결해야한다면 다른 UUID를 사용해야한다고 블루투스 채팅 응용 프로그램이 UUID 하드 코딩을 제안합니다.

이제 시나리오는 실제 총이 블루투스를 통해 휴대 전화에 연결되는 게임용 프로그램입니다 (촬영 추적 등). 좋아, 여기에서는 총기 판매 업체에게 모든 건에 대한 UUID를 하드 코딩하도록 요청할 수 있으며 전화는 한 번에 1 건으로 연결할 수 있습니다.

사용자는 총 1 개 이상을 가질 수 있습니다! 누군가가 모든 관리를 위해 하나의 UUID를 하드 코딩하고 다중 총을 연결하는 방법을 모르겠다면이를 관리하는 방법을 말해 줄 수 있습니까? 그리고 총 칩의 UUID를 하드 코딩하지 않으면 UUID를 어떻게 찾을 수 있습니까?

답변

6

UUID는 고유 한 장치 식별자가 아닙니다. UUID는 Bluetooth Service Discover Protocol이 Bluetooth 장치가 사용하는 프로토콜을 식별하는 데 사용되는 고유 한 식별자입니다. Bluetooth.org has a list of common UUIDs.

총에서 UUID를 알고 있거나 제어 할 수 있다고 가정하면 (총 소리가 들리는 것처럼 들릴 수도 있음) set up the phone as the Bluetooth server (총과 동일한 UUID 사용)을 사용할 수 있습니다. 총은 다음 동일한 UUID를 사용하여 connect as the clients 것입니다 (나는 총이 아마 안드로이드를 사용하지 않는다는 것을 알고 있지만 도움이 될만한 몇 가지 예제 코드가 있습니다).

물론 클라이언트/서버 모델을 특정 요구에 맞게 바꿔야 할 수도 있습니다. 하드웨어가 부과하는 연결된 장치 수의 한계 내에서 필요한 수의 서버 및 클라이언트 스레드를 만들 수 있어야합니다.

+0

왜 일반 클라이언트 연결이 작동하지 않는지 생각해 보면이 경우에는 'BluetoothServerSocket'을 사용해야합니다. – Prateek

+0

블루투스에서는 하나의 장치가 서버 여야하고 다른 장치는 클라이언트 여야합니다. 제 제안은 전화기를 서버로, 총을 고객으로 사용하는 것이 었습니다. 특정 유스 케이스는 다를 수 있습니다. –

+0

나는 비슷한 사용 사례를 가지고 있지만 서버로 전화를 만드는 것이 동시에 다른 블루투스 하드웨어 장치와 데이터를주고받는 기능을 제공하는지 확인하고 싶다. 그리고 당신이 이것의 구체적인 예를 제공 할 수 있다면 그것은 정말로 도움이 될 것입니다. – Prateek