与WebService交互用的是ksoap2.jar开源包WebService端:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Services;namespace WebService
{
/// <summary>
/// Service1 的摘要说明
/// </summary>
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
public class Service1 : System.Web.Services.WebService
{
[WebMethod]
public bool ValidateUser(string strName, string strPwd)
{
if (strName.Equals("test") && strPwd.Equals("test"))
{
return true;
}
else
{
return false;
}
}
}
}Android端访问WebService方法:将用户名("test"),密码("test")传到WebService端判断是否正确 private boolean CallWebService() {
String nameSpace = "http://tempuri.org/";
String methodName = "ValidateUser";
String url="192.16.168.82//Service1.asmx";
String SOAP_ACTION = nameSpace + methodName;
HttpTransportSE androidHttpTransport = null;
Object result = null;
boolean response = false;
SoapObject request = new SoapObject(nameSpace, methodName);
SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);
envelope.dotNet = true;
request.addProperty("userName", "test");
request.addProperty("userPwd", "test");
envelope.setOutputSoapObject(request);
envelope.bodyOut = request;
androidHttpTransport = new HttpTransportSE(url);
try {
androidHttpTransport.call(SOAP_ACTION, envelope);
result = (Object)envelope.getResponse(); //debug跟到这里,执行getResponse();完就抛异常
response = Boolean.parseBoolean(result.toString());
} catch(Exception e) {
e.printStackTrace();
}
return response;
}
P.S. IIS服务都正常,可以打开WebService端弄了一下午没搞好,请高手指点,感谢。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Services;namespace WebService
{
/// <summary>
/// Service1 的摘要说明
/// </summary>
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
public class Service1 : System.Web.Services.WebService
{
[WebMethod]
public bool ValidateUser(string strName, string strPwd)
{
if (strName.Equals("test") && strPwd.Equals("test"))
{
return true;
}
else
{
return false;
}
}
}
}Android端访问WebService方法:将用户名("test"),密码("test")传到WebService端判断是否正确 private boolean CallWebService() {
String nameSpace = "http://tempuri.org/";
String methodName = "ValidateUser";
String url="192.16.168.82//Service1.asmx";
String SOAP_ACTION = nameSpace + methodName;
HttpTransportSE androidHttpTransport = null;
Object result = null;
boolean response = false;
SoapObject request = new SoapObject(nameSpace, methodName);
SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);
envelope.dotNet = true;
request.addProperty("userName", "test");
request.addProperty("userPwd", "test");
envelope.setOutputSoapObject(request);
envelope.bodyOut = request;
androidHttpTransport = new HttpTransportSE(url);
try {
androidHttpTransport.call(SOAP_ACTION, envelope);
result = (Object)envelope.getResponse(); //debug跟到这里,执行getResponse();完就抛异常
response = Boolean.parseBoolean(result.toString());
} catch(Exception e) {
e.printStackTrace();
}
return response;
}
P.S. IIS服务都正常,可以打开WebService端弄了一下午没搞好,请高手指点,感谢。
解决方案 »
- android初学者
- ListView notifyDataSetChanged更新出错
- 关于color.xml,android:background="@drawable/white"的变态问题
- 一个比较麻烦的问题
- 请问obj==null和null=obj有什么区别?
- 怎么把别人的软件添加到自己的程序中?
- NexusOne这种触摸按键的在黑屏状态下能有相应吗?
- android按键事件到底怎么回事?
- 关于layout_alignParentStart属性
- 关于Android开发中install run is not supported on devices with api levels 20 or lower
- String 时间格式转换
- 新手问题datepicker点击按钮打开新窗口时崩溃
你BAIDU android 万能调用WEBSERVICE
这个原理简单,提交XML得到结果后解析XML