Android устройства, подключенные к NSD, как отправлять сообщения с помощью сокетов (клиент-клиент)?



Недавно я настроил P2P-связь в моем приложении на нескольких устройствах с помощью этого руководства: http://developer.android.com/training/connect-devices-wirelessly/nsd.html



Итак, теперь я могу найти другие устройства в моей сети, на которых работает мое приложение.
Теперь я хочу отправлять сообщения между клиентами. Может быть 1,2 или более клиентов, но сообщения будут идти только к 1 клиенту одновременно, больше похоже на запрос PING, но с некоторым текстом.



Я читал о сокетах, и, кажется, to be the way to go (будет общаться с устройствами iOS также в ближайшем будущем). Но.. Во всех примерах и учебниках я обнаружил, что в группе клиентов есть сервер, через который проходят все сообщения. Я просто хочу отправить сообщение от клиента к клиенту.



В основном я хочу:




  1. список всех устройств / клиентов в моей сети под управлением моего приложения, готово! (Имеет IpAdress, порт и т. д. Для всех них)

  2. щелкните один клиент и отправьте ping / сообщение


Любые намеки или примеры посмотреть?
Должны ли все клиентские устройства также иметь "сервер"?



С уважением,
Кристоффер

554   1  

1 ответ:

Так что я наконец-то понял.

Я изучал сокеты немного более подробно. Пример:

Http://docs.oracle.com/javase/tutorial/networking/sockets/clientServer.html

И понял, что мне нужен сервер на всех клиентах, чтобы заставить его работать должным образом. Так что теперь у всех клиентов есть ServerSocket, прослушивающий входящие соединения, и отдельный клиентский сокет для отправки сообщений на эти "серверы".

Похоже, что все это работает с подключениями как к android, так и к android. устройства iOS.

Несколько рабочих примеров использования этих сокетов:

Http://examples.javacodegeeks.com/android/core/socket-core/android-socket-example/

Http://thinkandroid.wordpress.com/2010/03/27/incorporating-socket-programming-into-your-applications/

/ Кристоффер

Comments

    Ничего не найдено.