Ksoap和HttpTransport Seand AndroidHttpTransport方法调用

时间:2012-04-28 23:34:06

标签: java android .net web-services ksoap2

在这个示例代码中,我引用了 ksoap2-android-assembly-2.6.3-jar-with-dependencies 在调试模式下我何时到达hts.call(SOAP_ACTION, envelope);行是不可思议的;应用程序代码以错误消息结束进入Log Cat消息错误:

-- 04-28 23:24:03.454: W/ActivityManager(80): Launch timeout has expired, giving up wake lock!
-- 04-28 23:23:38.667: W/ActivityManager(80): Activity idle timeout for ActivityRecord{407c0c10 yservices.screens/.MyservicesActivity}

我在创建活动中的源代码:

TextView tv = new TextView(this);
setContentView(tv);

SoapObject request = new SoapObject(NAMESPACE, METHOD_NAME);

SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);
envelope.setOutputSoapObject(request);
envelope.dotNet = true;
AndroidHttpTransport hts = new AndroidHttpTransport(URL);
try {

    hts.call(SOAP_ACTION, envelope);

    SoapPrimitive response = (SoapPrimitive)envelope.getResponse();
    // Log.i("myApp", response.toString());

    //tv.setText(weight+" "+fromUnit+" equal "+response.toString()+ " "+toUnit);
    tv.setText("Ok");

} catch(Exception e) {
    //e.getLocalizedMessage();
    tv.setText(e.getMessage());
}

我希望你能帮助我。我的操作系统版本是Windows 7 64位,Eclipse Indigo和JDK 1.6 如果您需要其他信息,请写信给我。

由于

2 个答案:

答案 0 :(得分:0)

警告表示您的应用程序在不断运行。但我认为这不是你想要的,所以你应该使用AsyncTask

答案 1 :(得分:0)

我的错误是因为ksoap2需要在名为libs的文件夹中引用而不是构建器路径eclipse,最后一个android版本到windows 7 x64有问题与上一个版本ksoap2