使用NSD连接Android设备,如何使用套接字发送消息(客户端到客户端)?

5

我最近在我的应用程序中使用了这个指南的帮助,在几个设备之间设置了P2P通信。

现在,我可以在运行我的应用程序的网络中找到其他设备。现在我想要在客户端之间发送消息。可以是1、2或更多客户端,但是消息每次只会发送给一个客户端,类似于PING请求,但带有一些文本。

我一直在研究套接字,它似乎是最佳选择(将来还将与iOS设备通信)。但是……在我找到的所有示例和教程中,都有一个服务器在客户端组中,所有消息都会通过该服务器进行传递。我只想从客户端发送消息-到-客户端。

基本上我需要:

  1. 列出在我的网络中运行我的应用程序的所有设备/客户端,已完成!(获得了所有设备的IpAdress、端口等)
  2. 选择一个客户端并发送一个PING请求/消息

是否应该让所有客户端设备也拥有一个“服务器”?有什么提示或示例可以参考吗?

顺祝商祺, Kristoffer

1个回答

6

我最终理解了它。

我正在更详细地学习套接字,例如:

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

我意识到需要在所有客户端上安装服务器才能使其正常工作。因此,现在所有客户端都有一个ServerSocket用于监听传入连接,并有一个单独的客户端套接字用于向这些“服务器”发送消息。
似乎与连接到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/

/ 克里斯托弗


1
非常感谢您分享这个答案!:D - Edeph

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接