web service地址http://www.stu80.com/android/list.asmx函数名  ListInfo 有参数的
public String ListInfo(String param)
{
  return ...;
}传进去的param值为  1  到  22之间一个数
返回xml可查看 http://www.stu80.com/android/test.phpxml结构为<lists>
  <list>
    <name>数值<name>
    <title>数值<title>
    <pic>数值<pic>
    <time>数值<time>
    <num>数值<num>
  </list>
</lists>要求,请大家写一个代码,在虚拟机里打开就列出来这些数据,当然最好排版一下。
在线等

解决方案 »

  1.   


    坦克大战啊 好久不见 你从PHP 到 C# 又从C# 到安卓 经历的很多嘛安卓调WEBSERVICE 方法很多的
      

  2.   


    /**
     * android自己集成的发送post请求
     * @param path
     * @param params 参数<key , value>
     * @return
     * @throws Exception
     */
    public static InputStream httpClientSendPost(String path , Map<String , String> params) throws Exception{
    //1.创建Post对象
    HttpPost post = new HttpPost(path);
    post.setHeader("Accept-Language", "zh-CN");
    //2.绑定参数到Post中
    List<NameValuePair> parameters = new LinkedList<NameValuePair>();
    for (Map.Entry<String, String> entry : params.entrySet()) {
    parameters.add(new BasicNameValuePair(entry.getKey(), entry.getValue()));
    }
    post.setEntity(new UrlEncodedFormEntity(parameters , "utf-8")); //绑定参数
    //发送Post请求
    HttpResponse response = new DefaultHttpClient().execute(post);
    if (response.getStatusLine().getStatusCode() == 200) {
    return response.getEntity().getContent(); //返回内容
    }
    return null;
    }上面方法返回输入流
    然后读取输入流的内容。得到字符串 这个会吧?
    得到字符串后解析字符串,得到你想要的数据
      

  3.   

    webservice 一般返回的都是json 或 xml 数据 , 可以进行相应的解析
      

  4.   

    我表示很菜的,给个完整的吧,也不用完全按要求,,只需能够举一反三就行了,或者项目发送到邮箱[email protected]
      

  5.   


    那有什么好的例子没,[email protected]
      

  6.   

    晕倒,按照书上的例子  也得不到数据,,谁帮我看看,问题在哪package org.stu;import java.io.IOException;import org.ksoap2.SoapEnvelope;
    import org.ksoap2.serialization.SoapObject;
    import org.ksoap2.serialization.SoapSerializationEnvelope;
    import org.ksoap2.transport.HttpTransportSE;
    import org.xmlpull.v1.XmlPullParserException;import android.app.Activity;
    import android.os.Bundle;
    import android.widget.EditText;
    public class StuActivity extends Activity
    {
    final static String SERVICE_NS = "http://tempuri.org/";
    final static String SERVICE_URL = "http://www.stu80.com/android/list.asmx?wsdl";
    private EditText txt1;
    @Override
    public void onCreate(Bundle savedInstanceState)
    {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    txt1 = (EditText) findViewById(R.id.txt1);
    // 调用的方法
    String methodName = "HelloWorld";
    // 创建HttpTransportSE传输对象
    HttpTransportSE ht = new HttpTransportSE(SERVICE_URL);
    ht.debug = true;
    // 使用SOAP1.1协议创建Envelop对象
    SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(
    SoapEnvelope.VER11 );
    // 实例化SoapObject对象
    SoapObject soapObject = new SoapObject(SERVICE_NS, methodName);
    soapObject.addProperty("param", "1");
    // 将soapObject对象设置为 SoapSerializationEnvelope对象的传出SOAP消息
    envelope.bodyOut = soapObject;

    try
    {
    // 调用Web Service
    ht.call(null,  envelope);
    if (envelope.getResponse() != null)
    {
    // 获取服务器响应返回的SOAP消息
    SoapObject result = (SoapObject) envelope.bodyIn;
    // 接下来就是从SoapObject对象中解析响应数据的过程了。
    SoapObject detail1 = (SoapObject) result.getProperty(0);
    //SoapObject detail2 = (SoapObject) result.getProperty(1);
    StringBuilder person1 = new StringBuilder();
    //person1.append("用户名:");
    person1.append(detail1.getProperty(3));
    //person1.append("\n密码");
    person1.append(detail1.getProperty(0));
    //person1.append("\n身高:");
    person1.append(detail1.getProperty(1));
    txt1.setText(person1.toString());
    }
    }
    catch (IOException e)
    {
    e.printStackTrace();
    }
    catch (XmlPullParserException e)
    {
    e.printStackTrace();
    }
    }
    }