使用TCP套接字在应用程序和服务器之间传输数据时出现问题[Android]

使用TCP套接字在应用程序和服务器之间传输数据时出现问题[Android],android,Android,我和我的开发团队正在开发一个使用sql数据库的应用程序,我们尝试使用tcp套接字将数据库从应用程序传输到服务器,我们对套接字进行了一些研究,服务器程序使用netbeans在java语言上编写,应用程序在eclipse上编写 我们使用android emulator在应用程序和服务器程序之间进行了几次连接测试,我们尝试将其设置为本地(在同一台计算机上运行这两个程序),服务器与应用程序连接,但它不接收所有包,它接收大约2Kb(我们希望传输一个25Kb的文件),当我们在同一网络中的其他计算机上运行服务

我和我的开发团队正在开发一个使用sql数据库的应用程序,我们尝试使用tcp套接字将数据库从应用程序传输到服务器,我们对套接字进行了一些研究,服务器程序使用netbeans在java语言上编写,应用程序在eclipse上编写

我们使用android emulator在应用程序和服务器程序之间进行了几次连接测试,我们尝试将其设置为本地(在同一台计算机上运行这两个程序),服务器与应用程序连接,但它不接收所有包,它接收大约2Kb(我们希望传输一个25Kb的文件),当我们在同一网络中的其他计算机上运行服务器时也会发生同样的情况,我们使用wireshark进行了一些测试,以捕获从应用程序传入服务器的所有数据包,反之亦然。我们注意到,服务器接收到所有数据,但首先它接收到一个2Kb的数据包,然后服务器应用程序接收到一个end ack,然后,应用程序接收丢失的包,然后丢弃它们

我们还使用coby kyros平板电脑而不是模拟器进行了一些连通性测试,我们没有问题,平板电脑上运行的应用程序发送所有数据,服务器接收数据

我们想知道仿真器上是否有错误,以及如何解决它


请帮助我们或向我们发送您的反馈

听起来您的仿真器环境遇到了配置问题。看一看

从实际设备来看,它工作正常,这一事实向我表明,您有一个模拟器网络配置问题。可能存在一些问题。我想象wireshark可以显示到达模拟器所在机器的数据包,但这并不意味着它们正在进入模拟器所在的虚拟网络

要验证,您可能需要使用以下内容

telnet localhost <emulator port>
network capture start 
... run test ...
network capture stop
telnet本地主机
网络捕获启动
... 运行测试。。。
网络捕获停止
然后查看捕获文件。这似乎应该捕获模拟器环境中的流量,让您了解发生了什么