在我的应用程序中,我使用ksoap2库调用一些Web Serices(WS),并且几乎所有的时候它都可以快速运行。但有时候,WS的调用非常缓慢。
我有这样的代码:
beforecall = System.currentTimeMillis();
androidHttpTransport1.call(NameSpaces.NAMESPACE+UserWSMethodName.GETUSERINFO,envelope1);
Log.d("soapdebug","call duration="+(System.currentTimeMillis()-beforecall));
通常我会得到1或2秒(最大值),但有时我会得到11秒......而且当调用太慢时,它会发生在所有WS上,过了一会儿(比如几小时)它会来恢复正常,变得快......
在wireshark中,我看到对于每次调用,调用call()
方法之间经过的时间和服务器与[SYN]数据包建立TCP连接的时间大约是10秒,所以它在这段时间里,时间花了,但我不明白为什么有时会发生这种情况。
可能导致问题的原因是什么? 它可能是设备配置?
答案 0 :(得分:0)
我为解决此问题所做的只是重新启动移动设备连接的路由器。