[Android 机制] 使用Ksoap2访问webservie,设置timeout时间

自己重写一下Ksoap2的代码就可以了。
修改一下org.ksoap2.transport.HttpTransportSE和org.ksoap2.transport.ServiceConnectionSE类就行了

 

在android项目中,可以使用ksoap访问WebService。但是HttpTransportSE.java类中,没有支持设置连接超时的方法,这样在特定的情况下会很不方便。查了很多资料也没什么很好的方法,最后决定自己改源码了。 
首先,在ServiceConnection.java接口中,新增一个方法:

public void setConnectTimeOut(int timeout);  



然后在ServiceConnectionSE.java类中,实现setConnectTimeOut(int timeout)方法: 

public void setConnectTimeOut(int timeout) { connection.setConnectTimeout(timeout); }  

实际上connection就是java.net.HttpURLConnection。 

在HttpTransportSE类中新增了一个构造方法 

public HttpTransportSE(String url, int timeout) throws IOException { super(url); connection = getServiceConnection(); connection.setConnectTimeOut(timeout); }  

 

你可能感兴趣的:(android,webservice,String,url)