Android上的KSOAP入门
我正在尝试在VisualStudio2008中创建web服务调用。但在运行android应用程序时,我并没有在emulator中获得任何输出。你能告诉我我的代码有什么问题吗?这样我就可以解决它了 _ 类似地,在android的.java文件中,我使用了如下代码:Android上的KSOAP入门,android,web-services,ksoap,Android,Web Services,Ksoap,我正在尝试在VisualStudio2008中创建web服务调用。但在运行android应用程序时,我并没有在emulator中获得任何输出。你能告诉我我的代码有什么问题吗?这样我就可以解决它了 _ 类似地,在android的.java文件中,我使用了如下代码: package com.webservicetest; import org.ksoap2.SoapEnvelope; import org.ksoap2.serialization.SoapObject; import org.kso
package com.webservicetest;
import org.ksoap2.SoapEnvelope;
import org.ksoap2.serialization.SoapObject;
import org.ksoap2.serialization.SoapSerializationEnvelope;
import org.ksoap2.transport.HttpTransportSE;
import android.app.Activity;
public class webservicetest extends Activity {
private static final String NAMESPACE = "http://localhost/webservicetest/" ;
private static final String URL = "http://192.168.1.10/webservicetest/Service.asmx";
private static final String HelloWorld_SOAP_ACTION = "http://localhost/webservicetest/HelloWorld";
private static final String METHOD_NAME1 = "HelloWorld";
public static void main(String[] args)
{
GetHelloWorld();
}
/** Called when the activity is first created. */
public static void GetHelloWorld() {
SoapObject request = new SoapObject(NAMESPACE, METHOD_NAME1);
//SoapSerializationEnvelope envelope =new SoapSerializationEnvelope(SoapEnvelope.VER11);
SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);
envelope.dotNet = true;
envelope.setOutputSoapObject(request);
HttpTransportSE androidHttpTransport = new HttpTransportSE(URL);
try
{
androidHttpTransport.call(HelloWorld_SOAP_ACTION, envelope);
SoapObject response = (SoapObject)envelope.getResponse();
int result = Integer.parseInt(response.getProperty(0).toString());
}
catch(Exception e)
{
e.printStackTrace();
}
}
}
我在int result=Integer.parseIntresponse.getProperty0.toString中遇到错误;由于从未读取局部变量结果。您指出的错误并不是导致应用程序无法运行的原因,它只表示您正在使用变量,但从未读取它。在Android开发中,您不使用main方法,但主要是重写Activity.onCreate 你可以找到一些教程
GetHelloWorld方法似乎还可以Hi sir,我修改了.java文件代码如下,而GetHelloWorld是相同的。
package com.webservicetest;
import org.ksoap2.SoapEnvelope;
import org.ksoap2.serialization.SoapObject;
import org.ksoap2.serialization.SoapSerializationEnvelope;
import org.ksoap2.transport.HttpTransportSE;
import android.app.Activity;
public class webservicetest extends Activity {
private static final String NAMESPACE = "http://localhost/webservicetest/" ;
private static final String URL = "http://192.168.1.10/webservicetest/Service.asmx";
private static final String HelloWorld_SOAP_ACTION = "http://localhost/webservicetest/HelloWorld";
private static final String METHOD_NAME1 = "HelloWorld";
public static void main(String[] args)
{
GetHelloWorld();
}
/** Called when the activity is first created. */
public static void GetHelloWorld() {
SoapObject request = new SoapObject(NAMESPACE, METHOD_NAME1);
//SoapSerializationEnvelope envelope =new SoapSerializationEnvelope(SoapEnvelope.VER11);
SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);
envelope.dotNet = true;
envelope.setOutputSoapObject(request);
HttpTransportSE androidHttpTransport = new HttpTransportSE(URL);
try
{
androidHttpTransport.call(HelloWorld_SOAP_ACTION, envelope);
SoapObject response = (SoapObject)envelope.getResponse();
int result = Integer.parseInt(response.getProperty(0).toString());
}
catch(Exception e)
{
e.printStackTrace();
}
}
}