最近遇见一个奇怪的现象,手机端通过日志、调试等等均发现数据已发送,但是服务器始终未收到数据。主要代码如下:
buffer.flip();
int len = buffer.limit();
if(null!=mSocket){
mSocket.getOutputStream().write(buffer.array(),0,len);
mSocket.getOutputStream().flush();
}
问题就在于len,偶现len等于0,所以手机端调试和log均为发送成功,但服务器一直未收到数据。
修改为如下所示,问题解决:
buffer.flip();
int len = buffer.limit();
if(null!=mSocket){
mSocket.getOutputStream().write(buffer.array(),0,buffer.array().length);
mSocket.getOutputStream().flush();
}