在android项目中,可以使用ksoap访问WebService。但是HttpTransportSE.java类中,没有支持设置连接超时的方法,这样在特定的情况下会很不方便。查了很多资料也没什么很好的方法,最后决定自己改源码了。 首先,在ServiceConnection.java接口中,新增一个方法:
- public void setConnectTimeOut(int timeout);
public void setConnectTimeOut(int timeout);然后在ServiceConnectionSE.java类中,实现setConnectTimeOut(int timeout)方法:
- public void setConnectTimeOut(int timeout) {
- connection.setConnectTimeout(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);
- }
public HttpTransportSE(String url, int timeout) throws IOException { super(url); connection = getServiceConnection(); connection.setConnectTimeOut(timeout);}
|
- 2010-08-30 15:30:44
- 浏览 2447
- 分类:
评论