Android emulator 仿真器TCP数据包大小

Android emulator 仿真器TCP数据包大小,android-emulator,Android Emulator,是否有人尝试过使用仿真器,以pc作为服务器,以手机作为客户端,来实现tcp客户机-服务器应用程序 我遇到了一个小问题,它只从客户端(电话)向服务器(PC)发送一个数据包,即1491字节的数据,而不管实际要发送多少数据 谢谢 James1491看起来与MTU(协议支持的最大数据包大小)有关。以太网MTU为1500。tcp不提供数据包,它是一个流。您必须自己处理自己的消息-例如,一个发送呼叫可能需要多个recv呼叫才能接收,反之亦然-您处理得是否正确?是的,确实如此,但事实是服务器只接收一个数据包。

是否有人尝试过使用仿真器,以pc作为服务器,以手机作为客户端,来实现tcp客户机-服务器应用程序

我遇到了一个小问题,它只从客户端(电话)向服务器(PC)发送一个数据包,即1491字节的数据,而不管实际要发送多少数据

谢谢


James

1491看起来与MTU(协议支持的最大数据包大小)有关。以太网MTU为1500。

tcp不提供数据包,它是一个流。您必须自己处理自己的消息-例如,一个发送呼叫可能需要多个recv呼叫才能接收,反之亦然-您处理得是否正确?是的,确实如此,但事实是服务器只接收一个数据包。这意味着,如果您尝试将价值2k的数据从客户端发送到服务器,它将无法获得所有数据。我知道这是一个模拟器问题,因为如果我在手机上安装该应用程序,它可以正常工作。但是仅仅在物理设备上开发是有点痛苦的。干杯James@jpspringall您如何确定您只收到1个数据包?在你的代码中,还是通过嗅探网络?在我的代码中,无论我一次从仿真器向pc发送多少数据,我只得到1491字节。我假设它是在模拟器设置中的某个地方设置的,但我想可能你的代码有问题。你为什么不展示一些你正在使用的代码呢?我在问你是如何“获取”这些1491字节的?你调用read()一次?循环?还有别的吗?