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.