Android 1.6丢失数据包

时间:2011-04-21 01:15:08

标签: android localhost serversocket

刚刚在Android 1.6(Sony Xperia X10)上遇到以下情况:在通过ServerSocket.accept()提供数据包时,在同一设备(例如127.0.0.1:8080)上的WebView中使用XMLHttpRequest请求数据时,XMLHttpRequest有时会进度停止了。调试器告诉我服务器实际上已深入ServerSocket.accept(),例如。他已经收到或未收到最后一次请求。 WebViewCoreThread停留在

Object.wait() line: 288 
Request.waitUntilComplete() line: 381   
RequestHandle.waitUntilComplete() line: 262 
Network.requestURL(String, Map, byte[], LoadListener, boolean) line: 195    
FrameLoader.handleHTTPLoad() line: 204  
FrameLoader.executeLoad() line: 131 
...

据说正在等待http0 ... http3个帖子,所有人都在等待

Object.wait(long, int) line: not available [native method]  
RequestQueue(Object).wait() line: 288   
ConnectionThread.run() line: 93 

首先我认为请求数据包丢失了。但这并不能解释为什么所有http..线程处于相同的等待位置,因为一个应该等待响应,而其他线程则来自WebView的新作业。有什么想法吗?

1 个答案:

答案 0 :(得分:0)

这确实是Android中的一个错误。可以通过在发送响应之前向服务器添加延迟来规避它。