如何在Android设备和PC之间实现高效的wifi通信?

时间:2014-02-27 21:09:10

标签: java android sockets tcp c++-cli

首先,我的问题不是关于设置wifi热点。我使用netsh轻松完成此操作。我的问题是在PC和设备之间执行通信套接字到套接字。

android设备充当服务器:我使用一个线程,其中ServerSocket等待连接(accept())然后返回Socket。然后它启动第二个线程,我通过InputStreamReaderPrintWriter访问流。我读完了这些角色,一旦完成,我就把答案发回去了。只要我必须保持沟通,我就保持Socket开放。

PC在C ++ / CLI(.NET)中编程,并充当客户端。 (实际上,Android设备是PC热点的wifi客户端,但是对于我的程序,它是相反的:计算机必须向设备发出请求;而不是相反。)所以我创建了一个Socket SocketType = Stream,ProtocolType = Tcp ,也许我做错了。)然后我连接它。实际连接有效:但可能需要几秒钟。无论如何,如果我必须做一两次,这不是问题。然后,我使用Send()发送请求,并使用Receive()获取答案。

现在,为了测试系统,我使用PuTTY。我连接正确,数据发送和接收正确。问题是存在巨大的延迟。我们来看一个例子:

o发送:CONNECT

等待5秒......

o接收:好的

我原以为它是瞬间的。我使用Eclipse调试器来查看延迟是在通信的PC到设备部分还是在Device-to-PC部分中发生。似乎两个方向都需要相同的时间。

  1. 使用带Tcp协议的流套接字(PC端?)
  2. 是否正确
  3. 套接字中的某些设置或Android中更深层次的设置我可以微调以更快地进行此类数据交换吗?
  4. 我当然可以给你更多信息,但我不知道什么是相关的,什么不是。请随时询问更多详细信息。

    感谢你们给我的帮助!

0 个答案:

没有答案