In my application I need to connect several (clients) devices to one (server) device. I need it to work in a LAN, so no remote server. The requirements are:
Must have:
Should have:
My googlefu is not helping me in this search, I'm lacking good search terms. What I'm asking is not some code, I'm asking for some advice on which technology to use and if it is doable at all in Android. Some good articles or tutorials are very welcome.
I would suggest using a client-server socket implementation. You can perform an IP broadcast and have your server respond to specific clients. Once the initial response is made, you can transfer data whichever way you like.
It basically boils down to:
Bear in mind that by using a socket, you're riding on a bare IP datagram and simply providing its body in raw binary data. This means that you'll have to manually write your protocol in order to cope with request and response types, dropped packets and any other limitations of IP. You may want to look around for a TCP implementation layer or something more sophisticated for your purpose.