2015-01-19 3 views
0

동일한 안드로이드 장치가 얼마나 많은 종류 및 다른 종류의 장치를 사용하고 있는지 알아야하는 andoird 응용 프로그램을 개발 중입니다. BLE 및 Wifi Direct에 대해 파기 한 후에는 안드로이드의 BLE API가 장치를 광고 할 수 없으며 Wifi Direct가 장치가 Wifi 라우터에 연결하지 못하도록하므로 효율적인 방법이 없다는 데는 의심의 여지가 있습니다.2 개의 안드로이드 장치가 서로의 존재를 어떻게 알 수 있습니까?

내 요구 사항은 효율적으로 수행되어야하며 사용자의 일반적인 네트워크 사용에 최소한의 영향을 미쳐야합니다.

+0

모든 * Android 기기를 검색해야합니까, 아니면 발견을 허용하기 위해 다른 기기에 앱을 설치하도록 허용 할 수 있습니까? –

+0

"안드로이드의 BLE API가 장치를 광고 할 수 없기 때문에 [...]". 저는 Lollipop (API 21) 이후로이 지원이 도입 된 것 같습니다. – Santa

+0

@HalimQarroum, 앱을 설치하는 것이 허용됩니다. –

답변

1

Android SDK에서 제공하는 Nsd (Network Service Discovery) API를 사용할 수 있습니다.

이 정보는 LAN (근거리 통신망)에서 원격 서비스 검색을 수행하기 위해 멀티 캐스트 DNS에서 사용됩니다. 원격 장치에 설치할 광고 응용 프로그램을 빌드하고 클라이언트 응용 프로그램에서 원격 장치를 검색하도록해야합니다.

NsdManager class documentation에서 API 작동 방식에 대한 유용한 정보를 제공 할 수 있습니다.

+0

그래서 Wifi를 사용하는 것으로 보이고 Wifi 액세스가없는 환경에서는 작동하지 않습니까? –

+0

네, 맞습니다. –

+0

나는 이것이 지금까지 할 수있는 최선이라고 생각한다. 고마워! –

관련 문제