天气查询APP/开发日志/Android

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/XGL1569348/article/details/72797102

打算开发一个轻量级,具有一定实用价值的天气App。

目标如下:
1. 主界面提供多城市的未来多天天气查询。
2. 多城市的逐小时天气预报。
2. Material Design.
3. 提供另一个快捷入口,使用Toast进行无Activity推送。
4. 若是要变天,采用推送通知。

https://github.com/GrayXu/ToastWeather


8.2更新

整个APP的大体完成了,UI设计可能需要大改一次……直男审美直男审美。
之后会继续写Java爬虫来获得中国天气网逐小时的数据,现有数据太不够。

这里写图片描述


7.22更新

城市ID的数据库弄成在第一次加载的时候存入SharePreference,毕竟也是键值对的数据结构,2000+组数据写入也很快。
除了WebView以外的离线缓存完成。WebView真的是一个全是坑的控件……
明天开始做服务,定时更新缓存,网络刚启动也更新缓存这样子。
UI重绘了一部分。
WebView通过JS注入,去掉了广告和无用的控件,不过因为是等到界面加载完成后才注入的,速度不是很快,待改进。
这里写图片描述


7.21更新

增加了来自spinner的刷新。
emmm好像没干什么,今天时间用的不如昨天多,撞得坑蛮多的……
发现第一次加载速度有点慢,用了离线缓存应该会好些吧……
还差搭SQLite,离线缓存,后台服务,一键Toast,UI设计。


7.20更新

推倒重来。
这里写图片描述
下午晚上基本是在走老路,没遇上什么bug。
第一栏的textview没想好用什么样的方法排个版。
第二栏的recyclerview,间距有点大……
第三栏的webview直接加载网页(待去除广告所在div)。
接着再做了离线缓存功能吧……


5.29

彩云天气还是没有开放api给我,索性在Hourly碎片里加载webview了,地址来自中国天气网,已知传入经纬度即可。(真真不熟悉爬虫)
Tips:

  • Fragment其实就是一个Activity中一个又一个的碎片,随时可以拼装或展示出来,activity过于重量级,所以不适合。
  • 期间出现了一个问题,刚开启Activity的时候,进行天气信息载入(我另一篇天气API博文里的源码),会出现成功准备好JsonObject但是所有数据都获取不了的问题,想了很久弄不清楚,手动更新天气数据的代码,放在哪里都会出现错误,只好用if抓掉了……最后不手动刷新天气,改成Spinner监听来自动更新,就不会了……
  • 在Fragment的onCreatView方法中,如果直接使用getActivity().findViewById(int id);获得的将是null,而应该用传参进来的inflater,inflater.inflate获得的view进行findViewById。因为控件还没有载入,获得不了在R里面注册的控件。监听器里面的就没有问题,因为肯定是加载布局后回调的嘛。

这里写图片描述
这里写图片描述

猜你喜欢

转载自blog.csdn.net/XGL1569348/article/details/72797102