解决方案 »

  1.   

    http://blog.csdn.net/fairyeye/article/details/6672466
      

  2.   


    package com.fastonz.getwebservice;import org.ksoap2.SoapEnvelope;
    import org.ksoap2.serialization.SoapObject;
    import org.ksoap2.serialization.SoapSerializationEnvelope;
    import org.ksoap2.transport.HttpTransportSE;import android.app.Activity;
    import android.content.Context;
    import android.content.SharedPreferences;
    import android.os.Bundle;
    import android.util.Log;
    import android.widget.TextView;public class MainActivity extends Activity
    { @Override
    protected void onCreate(Bundle savedInstanceState)
    {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.fragment_main);
    resultView=(TextView)findViewById(R.id.textview1);
    new Thread(new Runnable()
    {

    @Override
    public void run()
    {
    getRemoteInfo(10000);

    }
    }).start();
    }

    TextView resultView;
     /**
         * 手机号段归属地查询
         *
         * @param phoneSec
         *            手机号段
         */
        public void getRemoteInfo(int roomid,String keyCode) {
            // 命名空间
            String nameSpace = "XXXXX";
            // 调用的方法名称
            String methodName = "getCurUserCount";
            // EndPoint
            String endPoint = "http://192.168.5.242:8080/XXX/services/WsService";
            
            //创建httpTransportSE传输对象
            HttpTransportSE ht = new HttpTransportSE(endPoint);
            ht.debug = true;
            
            // 指定WebService的命名空间和调用的方法名
            SoapObject rpc = new SoapObject(nameSpace, methodName);
     
            // 设置需调用WebService接口需要传入的两个参数roomid、keyCode
            rpc.addProperty("roomid", roomid);
            rpc.addProperty("keyCode", "12345");
     
          //使用soap1.1协议创建Envelop对象
            SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);
     
            envelope.bodyOut = rpc;
            // 设置是否调用的是dotNet开发的WebService
            envelope.dotNet = false;
     
            try {
             //调用webService
                ht.call(null, envelope);
                //txt1.setText("看看"+envelope.getResponse());
                if(envelope.getResponse() != null){
                 Log.i("有返回", "有返回");
                    SoapObject result = (SoapObject) envelope.bodyIn;
                    String name = result.getProperty(0).toString();
                    Log.i("返回值 ", name);
                }else{
                 Log.i("返回值 ", "无返回值");
                }
            } catch (Exception e) {
                e.printStackTrace();
            }
            
        }}
      

  3.   

    使用ksoap2-android.jar 这个包 可以看下里面的文档,基本能满足你的需求!
      

  4.   

    4楼的正解
    ksoap2-android.jar
    不过你要用多线程