• android 调用.NET WebServices


    下载Ksoap2.jar,

    import  org.ksoap2.SoapEnvelope;
    import org.ksoap2.serialization.*;
    import org.ksoap2.transport.HttpTransportSE;
    import android.os.Handler;

    Handler handler = new Handler() {

    @Override
    public void handleMessage(Message msg) {
    super.handleMessage(msg);
    Bundle bundle= msg.getData();
    String result=bundle.getString("result");

    Toast.makeText(LoginActivity.this,result,Toast.LENGTH_SHORT).show();
    }
    };

    new Thread() {
    public void run() {

    String Namespace = "http://tempuri.org/";
    String MethodName = "UserLogin";
    String WEB_SERVICE_URL = "http://192.168.4.2/myWeb/User.asmx";

    SoapObject request = new SoapObject(Namespace, MethodName);
    // 2、设置调用方法的参数值,如果没有参数,可以省略,


    // 3、生成调用Webservice方法的SOAP请求信息。该信息由SoapSerializationEnvelope对象描述
    SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(
    SoapEnvelope.VER12);
    envelope.bodyOut = request;
    // c#写的应用程序必须加上这句
    envelope.dotNet = true;
    HttpTransportSE ht = new HttpTransportSE(WEB_SERVICE_URL);
    // 使用call方法调用WebService方法
    try {

    ht.call(null, envelope);
    } catch (Exception e) {
    e.printStackTrace();
    }
    try {
    final SoapPrimitive result = (SoapPrimitive) envelope.getResponse();
    if (result != null) {
    Log.d("----收到的回复----", result.toString());


    Message message=new Message();
    Bundle bundle=new Bundle();
    bundle.putString("result",result.toString());
    message.setData(bundle);
    handler.sendMessage(message);


    }


    } catch (Exception e) {
    Log.e("----发生错误---", e.getMessage());
    e.printStackTrace();
    }
    }
    }.start();
  • 相关阅读:
    X-Windows桌面
    scp命令详解
    LaTeX排版工具使用
    HTML5的在线视频播放方案
    开源软件大集合
    Linux下视频转换工具:转换,切割,连接,
    互联网产品经理常用软件及工作平台
    centos7安装VLC播放器
    2014年基于Raspberry Pi的5大项目
    天虎科技:全国智能硬件投融资情况大盘点
  • 原文地址:https://www.cnblogs.com/Chareree/p/6119882.html
Copyright © 2020-2023  润新知