我正在尝试通过 kSOAP(直接从 Google 下载并包含“.jar”)调用公共 Web 服务(w3schools.com/webservices/tempconvert.asmx)。
这是我的代码:
// declarations
private static final String NAMESPACE = "http://tempuri.org/" ;
private static final String METHOD_NAME = "CelsiusToFahrenheit";
private static final String SOAP_ACTION = "http://tempuri.org/CelsiusToFahrenheit";
private static final String URL = "http://216.128.29.26/webservices/tempconvert.asmx";
// code
try
{
SoapObject request = new SoapObject(NAMESPACE, METHOD_NAME);
SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);
HttpTransportSE androidHttpTransport = new HttpTransportSE(URL);
request.addProperty("Celsius", "32");
envelope.setOutputSoapObject(request);
androidHttpTransport.call(SOAP_ACTION, envelope);
Object result = envelope.getResponse();
}
catch(Exception e)
{
e.printStackTrace();
}
此外,“AndroidManifest.xml”包括访问互联网的权限:
<uses-permission android:name="android.permission.INTERNET"></uses-permission>
此外,我的 AVD 可以访问互联网(通过浏览器应用程序尝试过)。
有人可以帮帮我吗?我已经尝试了大约 6 个小时,但仍然失败。
谢谢!