今天闲来无事,通过和风天气接口实现了一个简单的获取当前时间点的天气情况,话不多说,直接给大家展示代码,功能是挺简单的,

1、获取数据的实体类:

package wxc.com.weatheer;import java.util.List;/*** Created by 宝 on 2017/9/16.*/
public class WeatherBean {/*** basic : {"city":"西青","cnty":"中国","id":"CN101030500","lat":"39.13944626","lon":"117.01224518","update":{"loc":"2017-09-16 07:46","utc":"2017-09-15 23:46"}}* now : {"cond":{"code":"101","txt":"多云"},"fl":"24","hum":"72","pcpn":"0","pres":"1014","tmp":"23","vis":"10","wind":{"deg":"172","dir":"南风","sc":"微风","spd":"7"}}* status : ok*/private List<HeWeather5Bean> HeWeather5;public List<HeWeather5Bean> getHeWeather5() {return HeWeather5;}public void setHeWeather5(List<HeWeather5Bean> HeWeather5) {this.HeWeather5 = HeWeather5;}public static class HeWeather5Bean {/*** city : 西青* cnty : 中国* id : CN101030500* lat : 39.13944626* lon : 117.01224518* update : {"loc":"2017-09-16 07:46","utc":"2017-09-15 23:46"}*/private BasicBean basic;/*** cond : {"code":"101","txt":"多云"}* fl : 24* hum : 72* pcpn : 0* pres : 1014* tmp : 23* vis : 10* wind : {"deg":"172","dir":"南风","sc":"微风","spd":"7"}*/private NowBean now;private String status;public BasicBean getBasic() {return basic;}public void setBasic(BasicBean basic) {this.basic = basic;}public NowBean getNow() {return now;}public void setNow(NowBean now) {this.now = now;}public String getStatus() {return status;}public void setStatus(String status) {this.status = status;}public static class BasicBean {private String city;private String cnty;private String id;private String lat;private String lon;/*** loc : 2017-09-16 07:46* utc : 2017-09-15 23:46*/private UpdateBean update;public String getCity() {return city;}public void setCity(String city) {this.city = city;}public String getCnty() {return cnty;}public void setCnty(String cnty) {this.cnty = cnty;}public String getId() {return id;}public void setId(String id) {this.id = id;}public String getLat() {return lat;}public void setLat(String lat) {this.lat = lat;}public String getLon() {return lon;}public void setLon(String lon) {this.lon = lon;}public UpdateBean getUpdate() {return update;}public void setUpdate(UpdateBean update) {this.update = update;}public static class UpdateBean {private String loc;private String utc;public String getLoc() {return loc;}public void setLoc(String loc) {this.loc = loc;}public String getUtc() {return utc;}public void setUtc(String utc) {this.utc = utc;}}}public static class NowBean {/*** code : 101* txt : 多云*/private CondBean cond;private String fl;private String hum;private String pcpn;private String pres;private String tmp;private String vis;/*** deg : 172* dir : 南风* sc : 微风* spd : 7*/private WindBean wind;public CondBean getCond() {return cond;}public void setCond(CondBean cond) {this.cond = cond;}public String getFl() {return fl;}public void setFl(String fl) {this.fl = fl;}public String getHum() {return hum;}public void setHum(String hum) {this.hum = hum;}public String getPcpn() {return pcpn;}public void setPcpn(String pcpn) {this.pcpn = pcpn;}public String getPres() {return pres;}public void setPres(String pres) {this.pres = pres;}public String getTmp() {return tmp;}public void setTmp(String tmp) {this.tmp = tmp;}public String getVis() {return vis;}public void setVis(String vis) {this.vis = vis;}public WindBean getWind() {return wind;}public void setWind(WindBean wind) {this.wind = wind;}public static class CondBean {private String code;private String txt;public String getCode() {return code;}public void setCode(String code) {this.code = code;}public String getTxt() {return txt;}public void setTxt(String txt) {this.txt = txt;}}public static class WindBean {private String deg;private String dir;private String sc;private String spd;public String getDeg() {return deg;}public void setDeg(String deg) {this.deg = deg;}public String getDir() {return dir;}public void setDir(String dir) {this.dir = dir;}public String getSc() {return sc;}public void setSc(String sc) {this.sc = sc;}public String getSpd() {return spd;}public void setSpd(String spd) {this.spd = spd;}}}}
}

2、下面是主要代码

和风的接口,有免费的和收费的,这里使用的是免费的

private String url = "https://free-api.heweather.com/v5/now?city=CN101030500&key=XXXXXX";

下面通过解析数据获取信息

try {// /创建okHttpClient对象OkHttpClient mOkHttpClient = new OkHttpClient();//创建一个Requestfinal Request request = new Request.Builder().url(url).build();//new callCall call = mOkHttpClient.newCall(request);//请求加入调度call.enqueue(new Callback() {@Overridepublic void onFailure(Call call, IOException e) {}@Overridepublic void onResponse(Call call, Response response) throws IOException {String string = response.body().string();Gson gosn = new Gson();w = new ArrayList<WeatherBean>();WeatherBean bean =gosn.fromJson(string,WeatherBean.class);w.add(bean);runOnUiThread(new Runnable() {@Overridepublic void run() {String citi = w.get(0).getHeWeather5().get(0).getBasic().getCity();String cn = w.get(0).getHeWeather5().get(0).getBasic().getCnty();String updateTime = w.get(0).getHeWeather5().get(0).getBasic().getUpdate().getLoc();String text = w.get(0).getHeWeather5().get(0).getNow().getCond().getTxt();String tep = w.get(0).getHeWeather5().get(0).getNow().getTmp();t1.setText(citi);t2.setText(cn);t3.setText(updateTime);t4.setText(text);t5.setText(tep);}});}});
} catch (Exception e) {e.printStackTrace();
}

这样就实现了一个简单的展示当前天气的功能,根据自己的需求,要想多长时间更新一次就可以了,值得注意的是,免费的接口每天请求的数量是有限制的,

源代码下载:http://download.csdn.net/download/chen_xiaobao/10043393

Android 实现简单当前时间点的天气情况(和风天气接口)相关推荐

  1. 请求天气 API 和风天气 API 免费

    请求天气 API 和风天气 API 免费 和风天气 https://www.qweather.com/ 是苹果天气的来源之一 它提供了免费的一些可用接口 API API 文档: https://dev ...

  2. 地区天气(和风天气)

    通过和风天气接口获取天气 和风天气开发服务 ~ 强大.丰富的天气数据服务 这个是花钱的,但是有免费次数 先登录申请key,还需申请腾讯的key(因为我是通过ip获取城市码) 注册在index中 < ...

  3. 超级计算机预报威海雨雪,威海历史天气预报查询_2018年12月份威海天气记录_威海2018年12月份天气情况_天气后报...

    日期 天气状况 气温 风力风向 阴 /小雨 12℃ / 8℃ 东北风 4-5级 /东北风 4-5级 小雨 /小雨 14℃ / 9℃ 东南风 5-6级 /东南风 5-6级 小雨 /多云 13℃ / 5℃ ...

  4. Android实战:CoolWeather酷欧天气(加强版数据接口)代码详解(上)

    -----------------------------------该文章代码已停更,可参考浩比天气(更新于2019/6/25)----------------------------------- ...

  5. Android使用高德和风天气Sdk获取定位实况天气数据(二)

    Android使用高德和风天气Sdk获取定位实况天气数据(二) 先看一下效果 关于 实现 第一步,引用高德api与和风天气 第二步,修改AndroidManifest.xml 第三步,修改activi ...

  6. Android开发之和风天气篇:1、获取天气信息

    TIME:2020年7月6日 :1.获取天气信息 和风天气API使用方法: step1 申请天气接口 step2 天气接口初始化 step3 选择服务模式 step4 通过URL请求数据 step5解 ...

  7. 【微信小程序】使用和风天气接口api(全过程)——获取天气

    介绍 这里是小编成长之路的历程,也是小编的学习之路.希望和各位大佬们一起成长! 以下为小编最喜欢的两句话: 要有最朴素的生活和最遥远的梦想,即使明天天寒地冻,山高水远,路远马亡. 一个人为什么要努力? ...

  8. 智能聊天功能——天气情况篇

    天气预报已然成为人们生活中不可缺少的一部分,实时了解气象的优劣,做到第一时间预防是至关重要的.所以,当我们需要外出时,如果能提前知道天气的变化情况,做好预防准备措施,就能让出行变得更加顺利. 本系统为 ...

  9. vue中如何使用和风天气插件

      想给我的个人博客添个展示天气的,网上一找看到了中国天气.和风天气这两种,附一下这两个的官网链接. 中国天气:https://cj.weather.com.cn/plugin/index 和风天气: ...

最新文章

  1. linux memcached php 整合
  2. 中南大学计算机有网络安全,中南大学2019年大学生网络安全知识竞赛(复赛)成功举行...
  3. NFS mount.nfs: access denied by server while mounting 一个解决办法
  4. Document for the hackthon
  5. c#与mysql数据库连接以及.net framework版本修改问题
  6. Java设置软件图标即窗口上角图标
  7. 深入学习Redis(4):哨兵
  8. location.href属于重定向还是转发_servlet2 单元测试、转发、重定向
  9. matlab二维数组最小值出错,矩阵求最小值问题 问题是: 错误使用空矩形矩阵进行赋值...
  10. 在活动完成之后的格式工厂下载
  11. OpenShift 4- 用ArgoCD安装ArgoCD环境
  12. C# ChartControl
  13. 2018年最好用的百度网盘资源搜索神器排行
  14. 【干货】32个EMC标准电路分享!
  15. 产业互联网周报:博通610亿美元收购VMware;阿里云财报13年来首次年度盈利;华为:对所有供应商提出碳减排要求...
  16. 影楼修片走下神坛 PS磨皮技巧大揭秘
  17. 李克平教授讲座——《城市道路交叉口规划规范》解读与绿灯间隔(整理文本)...
  18. windows下谷歌邮箱注册及谷歌浏览器登录
  19. Dijkstra算法
  20. Bingo说说:副业刚需时代,你有B计划吗?

热门文章

  1. CCTV-5的街舞比赛
  2. 阻塞IO和非阻塞IO的区别
  3. pythonturtle实现画一个海豚
  4. Java中回车符的使用‘\r‘
  5. java继承案例分析_Java面向对象_继承——基本概念以及管理化妆品实例分析
  6. python生成一副扑克牌_【扑克游戏基本】用python打造出一副扑克牌并实操大转变...
  7. html 获取class节点,jquery获取class元素
  8. 2018湖北省大学程序设计竞赛 D. Who killed Cock Robin
  9. Java面向对象系列[v1.0.0][泛型进阶]
  10. java设计模式---责任链模式详解