android:java.net.sockettimeout异常

android:java.net.sockettimeout异常,java,android,.net,web-services,android-ksoap2,Java,Android,.net,Web Services,Android Ksoap2,实际上,我正在开发一个android应用程序…我需要从.net webservice获取100多行数据…(使用ksoap2)…但是当我调用webservice时,我得到了套接字超时..异常..我没有获取100行,而是尝试获取30行..效果很好..因此我无法识别问题是在.net webservice还是在我的android中。 我只是想知道是否有其他方法可以同时获取大量数据 我还添加了权限: <uses-permission android:name="android.permission.

实际上,我正在开发一个android应用程序…我需要从.net webservice获取100多行数据…(使用ksoap2)…但是当我调用webservice时,我得到了套接字超时..异常..我没有获取100行,而是尝试获取30行..效果很好..因此我无法识别问题是在.net webservice还是在我的android中。 我只是想知道是否有其他方法可以同时获取大量数据

我还添加了权限:

<uses-permission android:name="android.permission.INTERNET" >
</uses-permission>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />

代码:

package school.demo;
导入java.util.ArrayList;
导入java.util.HashMap;
导入org.ksoap2.SoapEnvelope;
导入org.ksoap2.serialization.SoapObject;
导入org.ksoap2.serialization.SoapSerializationEnvelope;
导入org.ksoap2.transport.HttpTransportSE;
导入android.os.Bundle;
导入android.app.Activity;
导入android.view.view;
导入android.widget.AdapterView;
导入android.widget.AdapterView.OnItemClickListener;
导入android.widget.ArrayAdapter;
导入android.widget.Button;
导入android.widget.GridView;
导入android.widget.TextView;
导入android.widget.Toast;
公共类代码扩展活动{
按钮b1;
文本视图t1;
字符串s=“11-10-2012”;
int c=0,j=0;
ArrayList al=新的ArrayList();
HashMap图;
私有静态最终字符串命名空间=”http://TestClass/";
私有静态最终字符串URL=“http://****.*/TestClass/Service1.asmx”;
私有静态最终字符串HelloWorld\u SOAP\u ACTION1=”http://TestClass/getdata";
私有静态最终字符串方法\u NAME2=“getdata”;
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.accounts);
GridView g1=(GridView)findViewById(R.id.gridView1);
SoapObject请求=新的SoapObject(名称空间,方法\名称2);
请求。添加属性(“Uname”,s);
SoapSerializationEnvelope=新的SoapSerializationEnvelope(
第11版);
envelope.dotNet=true;
envelope.setOutputSoapObject(请求);
HttpTransportSE httpTransport=新的HttpTransportSE(URL);
httpTransport.setTimeout(模式世界可读);
试一试{
调用(HelloWorld\uSOAP\uAction1,信封);
SoapObject res=(SoapObject)envelope.getResponse();
SoapObject根=(SoapObject)res.getProperty(0);
SoapObject s_deals=(SoapObject)root.getProperty(“表1”);
字符串s=s_deals.toString();
httpTransport.requestDump=“TRUE”;
//Toast.makeText(getApplicationContext(),s,
//Toast.LENGTH_LONG).show();
对于(int i=1;i
logcat中的任何警告错误,然后在此处共享。是否不设置超时?您正在显式地设置它(设置为听起来不像超时值的值),然后询问它为什么在某些时间后超时。。。时间?错误日志..检索活动{key=Landroid/app/Activity;}[在Activity.class[在android.app[在E:\adt-bundle-windows-x86\sdk\platforms\android-10\android.jar中]的附加javadoc时超时]我删除了超时并进行了检查..仍然面临相同的问题..logcat错误:GC_显式释放6K,54%释放2544K/5511K,外部410K/517K,暂停53ms 01-03 10:53:13.143:D/dalvikvm(141):GC_显式释放118K,50%释放2988K/5895K,外部1241K/1559K,暂停102ms 2537K/5511K,外部410K/517K,暂停65ms 01-03 10:53:23.213:D/dalvikvm(227):GC_显式释放8K,54%释放2597K/5639K,外部410K/517K,暂停137ms 01-03 10:53:25.908:D/SntpClient(61):请求时间失败:java.net.SocketException:协议不支持地址族
 package school.demo;
 import java.util.ArrayList;
 import java.util.HashMap;
 import org.ksoap2.SoapEnvelope;
 import org.ksoap2.serialization.SoapObject;
 import org.ksoap2.serialization.SoapSerializationEnvelope;
 import org.ksoap2.transport.HttpTransportSE;
 import android.os.Bundle;
 import android.app.Activity;
 import android.view.View;
 import android.widget.AdapterView;
 import android.widget.AdapterView.OnItemClickListener;
 import android.widget.ArrayAdapter;
 import android.widget.Button;
 import android.widget.GridView;
 import android.widget.TextView;
 import android.widget.Toast;

 public class Code extends Activity {

Button b1;
TextView t1;
String s = "11-10-2012";
int c = 0, j = 0;
ArrayList<String> al = new ArrayList<String>();
HashMap<String, String> map;
private static final String NAMESPACE = "http://TestClass/";
private static final String URL = "http://***.**.**.**/TestClass/Service1.asmx";
private static final String HelloWorld_SOAP_ACTION1 = "http://TestClass/getdata";
private static final String METHOD_NAME2 = "getdata";

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.accounts);
    GridView g1 = (GridView) findViewById(R.id.gridView1);
    SoapObject request = new SoapObject(NAMESPACE, METHOD_NAME2);
    request.addProperty("Uname", s);
    SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(
            SoapEnvelope.VER11);
    envelope.dotNet = true;
    envelope.setOutputSoapObject(request);

    HttpTransportSE httpTransport = new HttpTransportSE(URL);
    httpTransport.setTimeout(MODE_WORLD_READABLE);
    try {
        httpTransport.call(HelloWorld_SOAP_ACTION1, envelope);

        SoapObject res = (SoapObject) envelope.getResponse();
        SoapObject root = (SoapObject) res.getProperty(0);
        SoapObject s_deals = (SoapObject) root.getProperty("Table1");
        String s = s_deals.toString();
        httpTransport.requestDump="TRUE";
        // Toast.makeText(getApplicationContext(), s,
        //Toast.LENGTH_LONG).show();

        for (int i = 1; i < root.getPropertyCount(); i++) {
            Object o = root.getProperty(i);
            SoapObject main = (SoapObject) o;
            String f1 = main.getProperty(1).toString();
            String f2 = main.getProperty(2).toString();
            String f3 = main.getProperty(3).toString();
            String f4 = main.getProperty(4).toString();
            String f5 = main.getProperty(5).toString();
            //String f6 = main.getProperty(6).toString();
            al.add(f1);
            al.add(f2);
            al.add(f3);

        }
        @SuppressWarnings("unchecked")
        ArrayAdapter a1 = new ArrayAdapter(Code.this, R.layout.blows,
                R.id.textView1, al);
        g1.setAdapter(a1);
        g1.setOnItemClickListener(new OnItemClickListener() {

            @Override
            public void onItemClick(AdapterView<?> arg0, View arg1,
                    int arg2, long arg3) {
                // TODO Auto-generated method stub
                Toast.makeText(getApplicationContext(), " " + arg2,
                        Toast.LENGTH_LONG).show();
            }
        });
    } catch (Exception e) {
        Toast.makeText(getApplicationContext(), e.toString(),
                Toast.LENGTH_LONG).show();
    }
        }
     }