最近老板要求在launcher界面做个自动定位并获取当地天气的功能,中间走了不少弯路我在这里都写下来,希望看到这篇文章的人能少走点弯路。
1、接到任务后我首先想嘚是,先把天气获取到(比如获取深圳本地的)然后再做定位的功能
有了大致的思路后,就着手开始做了因为公司是做国外的生意,所以用的是雅虎的api说起来雅虎,年前自己搞个天气玩了下用的就是雅虎的,是解析woeid的当时是可以用的,不清楚从什么时候用不了
然後就到雅虎的官网上找别的方法因为之前参考网上的例子,原作者是用sax解析xml我也就依葫芦画瓢想用sax解析,xml是这样的
ok但是后来发现,遇到了困难用的方法不对。想了下还是用json的解析,比较熟悉些然后访问雅虎返回的json数据是这样的
是不是看着头都大了,本菜菜当时┅看顿时吓尿这里推荐一个在线转换json格式()
是不是感觉清晰了很多?
这里返回的数据需要层层递取的,下面贴代码
这里我用了voelly框架,封装好的方法用起来就是爽,话说还没用过的请自行百度真的很好用(哈哈,这里感谢基友浩的鼎力帮助)
//雅虎json查询天气语句
最後说一下因为定位只在移动网络上有效,query 这个button按钮是为了客户连接以太网手动输入城市,获取天气儿准备的
这里点击EditText才会显示软键盤*/
希望可以帮到大家,如有有错误请帮忙指正。谢谢!
会员到期时间: 剩余下载个数: 剩余C币: 剩余积分:0
为了良好体验不建议使用迅雷下载
本项目是一个可以自动定位和手動选择的天气预报源码打开app首先会有一个四屏的引导界面,城市定位有自动定位(百度)和手动选择功能手动选择加载时间较长貌似是洇为省市信息是在网络获取天气详情页面是模仿的微信滑动页面来显示最近几天的天气,不过不知道什么原因天气信息显示不出来,本项目默认编译版本4.4.2.编码GBK喜欢的朋友可以下载研究一下