• android webservice 成功版(帅哥)


    package com.ts.xtweatherreport01;
    import java.io.UnsupportedEncodingException;

    import android.annotation.SuppressLint;
    import android.annotation.TargetApi;
    import android.app.Activity;
    import android.os.Build;
    import android.os.Bundle;
    import android.os.Handler;
    import android.os.HandlerThread;
    import android.os.Message;
    import android.os.StrictMode;
    import android.util.Log;
    import android.view.View;
    import android.widget.Button;
    import android.widget.TextView;
    import android.widget.Toast;

    import org.ksoap2.SoapEnvelope;
    import org.ksoap2.serialization.SoapObject;
    import org.ksoap2.serialization.SoapSerializationEnvelope;
    //import org.ksoap2.transport.AndroidHttpTransport;
    import org.ksoap2.transport.HttpTransportSE;





    public class TSMainActivity extends Activity 
    {
        
        private Handler handler = null;

        
        
        private Button okButton;
        private TextView v;
        

        
        private static final String NAMESPACE = "http://WebXml.com.cn/";
        
        private static String URL = "http://www.webxml.com.cn/webservices/weatherwebservice.asmx";

        private static final String METHOD_NAME = "getWeatherbyCityName";

        private static String SOAP_ACTION = "http://WebXml.com.cn/getWeatherbyCityName";

        private String weatherToday;

        private SoapObject detail;
        
        @Override

        public void onCreate(Bundle savedInstanceState) 
        {
            super.onCreate(savedInstanceState);    
            setContentView(R.layout.activity_tsmain);

        
            
            v=(TextView)this.findViewById(R.id.textView2);
            okButton = (Button) this.findViewById(R.id.button1);
            okButton.setOnClickListener(new Button.OnClickListener() {
                @Override
                public void onClick(View v) {
                    
                        HandlerThread handlerThread = new HandlerThread("myHandlerThread");  
                        handlerThread.start();  
                        handler = new Handler(handlerThread.getLooper());  
                        handler.post(new MyRunnable());  
      
                }

            });
        }

        private class MyRunnable implements Runnable {  
            public void run() {  
            
                try {  
                    Thread.sleep(0);  
                    
                    String city = "北京";
                    getWeather(city); 
                    
                } catch (InterruptedException e) {             
                    e.printStackTrace();  
                }  
            }  
        }  

        public void getWeather(String cityName)
        {

                System.out.println("rpc------");
                SoapObject rpc = new SoapObject(NAMESPACE, METHOD_NAME);
                System.out.println("rpc" + rpc);
                System.out.println("cityName is " + cityName);
                rpc.addProperty("theCityName", cityName);
                
                SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER10);
                envelope.bodyOut = rpc;
                envelope.dotNet = true;
                envelope.setOutputSoapObject(rpc);
                
                HttpTransportSE ht = new HttpTransportSE(URL);

            
                ht.debug = true;
                try
                {
                ht.call(SOAP_ACTION, envelope);


                detail =(SoapObject) envelope.getResponse();
                
        
                System.out.println("detail" + detail);
                Toast.makeText(this, detail.toString(), Toast.LENGTH_LONG).show();
                v.setText(detail.toString());
                parseWeather(detail);

                return;
            } 
                catch (Exception e) 
                {
                e.printStackTrace();
                }
        }

        private void parseWeather(SoapObject detail)
                throws UnsupportedEncodingException 
                {
            String date = detail.getProperty(6).toString();
            weatherToday = "今天:" + date.split(" ")[0];
            weatherToday = weatherToday + " 天气:" + date.split(" ")[1];
            weatherToday = weatherToday + " 气温:"
                    + detail.getProperty(5).toString();
            weatherToday = weatherToday + " 风力:"
                    + detail.getProperty(7).toString() + " ";
            System.out.println("weatherToday is " + weatherToday);
            Toast.makeText(TSMainActivity.this, weatherToday, Toast.LENGTH_LONG).show();

                }
    }

  • 相关阅读:
    react-custom-scrollbars的使用
    【react】Mobx总结以及mobx和redux区别
    【React】Redux入门 & store体验
    chrome安装react-devtools开发工具
    【vue】vuex防止数据刷新数据刷掉
    搭建博客的两个工具区别
    JavaScript中的作用域
    通过JavaScript创建表格
    JavaScript中的普通for循环和 for in循环
    JavaScript中创建默认对象的方式
  • 原文地址:https://www.cnblogs.com/xrtd/p/3870335.html
Copyright © 2020-2023  润新知