weatherdemo

来源:互联网 发布:js中换行符\n和br 编辑:程序博客网 时间:2024/06/08 06:36
import org.ksoap2.transport.HttpTransportSE;
public class MainActivity extends AppCompatActivity {
    private Button bu;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        bu = (Button) findViewById(R.id.bu);
        bu.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                new Thread() {
                    @Override
                    public void run() {
                        super.run();
                        try {
                            getWeather();
                        } catch (Exception e) {
                            e.printStackTrace();
                        }
                    }
                }.start();
            }
        });
    }
    private void getWeather() throws Exception {
        String service_name = "http://ws.webxml.com.cn/WebServices/WeatherWS.asmx";
        String name_pace = "http://WebXml.com.cn/";
        String manth_name = "getWeather";
        HttpTransportSE httpTransportSE = new HttpTransportSE(service_name);
        SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);
        SoapObject soapObject = new SoapObject(name_pace, manth_name);
        soapObject.addProperty("theCityCode", "运城");
        soapObject.addProperty("theUserID", "c74d59225b6d4354a84c4977f744ad1b");
        envelope.bodyOut = soapObject;
        envelope.dotNet = true;
        httpTransportSE.call(name_pace + manth_name, envelope);
        if(envelope.getResponse() != null) {
            SoapObject so = (SoapObject) envelope.bodyIn;
            SoapObject sa = (SoapObject) so.getProperty("getWeatherResult");
            System.out.println("属性:" + sa);
            for (int i = 0; i < sa.getPropertyCount(); i++) {
                SoapPrimitive saop = (SoapPrimitive) sa.getProperty(i);
                System.out.println("值:" + saop);
            }
        }
    }
}
0 0