I will create a server-less local networking App for iOS and Android. the App in both iOS and Android devices should find out and talk to each other.
I know that there are platform built-in services (which are Bonjour in iOS and NSD in Android since v4.1), in addition, a open source jmdns package can be used out of the box as well.
I don't know how to choose and how is their compatibility.
My questions are:
- Is Android NSD (network service discovery) compatible with Bonjour in iOS? What should I use for service discovery in my App.
- Do I need to use third-party lib if i also develop PC version for the App?
I developed similar project. Let me answer your questions:
- Yes. The official sample code should be able to make your quick start. Implement the function of service discovery is very easy. Only two steps: setting up a discovery listener with the relevant callbacks, and making a single asynchronous API call to discoverServices().
- If you use the third-party library, Advantage: It can make your application works below Android 4.1;Disadvantage: Developing the function of service discovery would more complex. Because of you need write a background service to listen to broadcasts on the network.