获取天气(WebXml)
来源:互联网 发布:苦瓜知乎道理 编辑:程序博客网 时间:2024/06/05 02:46
package com.example.weatherdemo;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.TextView;
import org.ksoap2.SoapEnvelope;
import org.ksoap2.serialization.SoapObject;
import org.ksoap2.serialization.SoapPrimitive;
import org.ksoap2.serialization.SoapSerializationEnvelope;
import org.ksoap2.transport.HttpTransportSE;
public class MainActivity extends AppCompatActivity implements View.OnClickListener {
private TextView tvContent;@Overrideprotected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); findViewById(R.id.btnWeather).setOnClickListener(this); tvContent = (TextView) findViewById(R.id.tvContent);}/** * 获取天气 */private void getWeather() throws Exception{ //saop协议 基于http String service_url = "http://ws.webxml.com.cn/WebServices/WeatherWS.asmx"; //namepace String name_space = "http://WebXml.com.cn/"; //具体请求的服务 String method_name = "getWeather"; //创建信封 文件的路径 HttpTransportSE httpTransportSE = new HttpTransportSE(service_url); //顺丰、圆通 SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11); //参数1: namespace //参数2 : 具体的服务名字 SoapObject soapObject = new SoapObject(name_space,method_name); //key/value //设置请求参数 soapObject.addProperty("theCityCode","北京"); soapObject.addProperty("theUserID","5071be049c5241ad8583050460fc1fac"); //添加到信封 envelope.bodyOut = soapObject; //设置跨语言的兼容性 envelope.dotNet = true; //连接服务器并发送请求 //soapAction httpTransportSE.call(name_space + method_name,envelope); //服务器响应 if(envelope.getResponse() != null){//判断响应消息不为空,如果为空就没有请求成功 // SoapObject result = (SoapObject) envelope.getResponse(); SoapObject result = (SoapObject) envelope.bodyIn; //得到属性集的数量 //int count = result.getPropertyCount(); SoapObject subSoapObj = (SoapObject) result.getProperty("getWeatherResult"); System.out.println("属性 : "+subSoapObj.getPropertyCount()); for (int i = 0; i < subSoapObj.getPropertyCount(); i++) { //注意 key-value 看作是一个soapprimitive类型 SoapPrimitive childResult = (SoapPrimitive) subSoapObj.getProperty(i); System.out.println("值 : "+childResult); } //解析数据 // System.out.println("结果 : "+result); }}@Overridepublic void onClick(View v) { switch (v.getId()){ case R.id.btnWeather: { //子线程 new Thread(){ @Override public void run() { super.run(); try { getWeather(); } catch (Exception e) { e.printStackTrace(); } } }.start(); } break; }}
}
0 0
- 获取天气(WebXml)
- 获取天气
- 获取天气
- 百度天气API 获取天气
- WebService学习笔记-读取webxml.com.cn的天气服务信息
- 获取天气日报
- 根据IP获取天气
- Shell 获取天气
- 如何获取天气信息
- 获取客户端天气
- Webservices获取天气
- webservice 获取天气情况
- 获取天气信息
- Qt获取天气信息
- 通过API获取天气
- jsp获取sina天气
- android-天气获取
- python3获取天气信息
- 纯虚析构函数和非纯虚析构函数
- MindManager思维导图应用案例分享
- 腾讯云搭建个人博客
- jQuery表单校验
- 明明的随机数
- 获取天气(WebXml)
- python异常处理
- H5与native有啥区别?
- 台湾大学林轩田机器学习基石课程学习笔记6 -- Theory of Generalization
- [Android]查看KeyStore的MD5或SHA1签名
- MySQL 数据库的安装及配置
- bzoj 1083: [SCOI2005]繁忙的都市 (最小生成树)
- 项目之底部导航栏
- Java并发读书笔记(二)