我想开发一个客户端服务器应用程序,其中服务器在Android手机上具有wifi和客户端应用程序的PC上。我想在android中使用vc ++ .Net和客户端应用程序制作服务器应用程序。我是网络编程的新手,我无法在互联网上找到任何关于此的线索。而且我也不知道服务器是否可能是使用vc ++制作的.net和客户端是使用android制作的。
任何人都可以指示我如何为此而动。如果可能的话,请提供一些与此相关的链接。
任何帮助将不胜感激。
答案 0 :(得分:10)
您的问题含糊不清,并且对许多潜在的“正确”答案持开放态度。首先,整个wifi vs.s.互联网部分无关紧要,您只想通过网络从Android设备与PC通信。
要查找的字词是sockets
。你要做的是听PC上的特定端口(“服务器”)。您必须打开防火墙中的相关端口。
然后编写一个与此服务器通信的Android应用程序,请参阅here以获取正确的介绍。
使用单个套接字(IP地址+端口)连接多个设备没有问题,只要您的协议包含每个客户端识别自身的方式。
...
也就是说,您还可以在更高级别执行所有这些操作,运行基于SOAP / JSON的客户端/服务器方案(而不是编写自己的基于套接字的协议)。有关示例,请参阅http://wiebe-elsinga.com/blog/?p=405。
最合适的选择取决于您的具体要求(性能,部署)和您的经验水平。
<强>更新强>
您可以使用jmDNS来实现此目的。它是一个非常有用的库,一旦你检测到连接到同一个wifi的所有设备,你就可以获得它们的ip和端口,这样你就可以建立连接。您可以详细了解如何使用它here。
或者您可以使用仅适用于API Level 14+的Android Wi-Fi Direct API。以下是有关API的更多信息:Wifi-Direct。
how to achieve transfer file between client and server using java socket
希望这是你要找的! :)