Now, the features. I will start by explaining how to implement them, and then how to use the ones I already implemented.
Here, the two features are the possibility to send and receive data, via UDP sockets (UDP is less secured but easier to use, and you shouldn’t have security issues in C6, although it would be interesting to transcript this in TCP sockets).
Since you can’t use “heavy” network on the main thread, as explained before, you have two possibilities: either use asyncTask, a way to start new thread in the mainActivity, or directly starting a new tread, as follows:
Thread thread = new Thread();