Android天气应用

黑色简洁风格的 UI、实时天气数据展示、支持定位查询,Android 天气应用在细节上还挺用心的。想学 Android 开发的你,如果正好想做个项目练练手,这个还蛮合适。

UI 设计方面走的是比较清爽的 Material 风,CardViewRecyclerView,展示一天的温度、湿度、风速这些都挺直观。多设备适配也考虑得不错,屏幕小点的手机用起来也没压力。

网络部分用的是比较主流的库——OkHttpGson,配合天气 API 拉取数据,响应也快。拿到的是JSON格式,解析之后直接封装成 Java 类,绑定到 UI 上一气呵成,挺舒服的。

定位这块也没落下,调用了 Android 的Location API,还能监听位置变化。权限做得还不错,6.0 以上的动态权限流程也加上了,适配得比较到位。

离线缓存用的是SharedPreferences加一点SQLite,逻辑还蛮清晰。像短时间内反复打开 App,能直接读缓存的数据,体验比较丝滑。

你要是想学多线程的异步求,它里面也用到了AsyncTaskHandler,虽然不算最“现代”的写法,但逻辑上挺好懂,入门练手合适。

如果你考虑国际化,这项目也给你留了点参考,比如资源目录下的strings.xml就准备了多语言的支持,你可以试试加点自己的语言包进去玩玩。

想看看源码的,可以去这里瞅瞅:Android 天气预报源代码,源码打包在一个叫EZWeather的压缩包里,适合慢慢拆着学。

如果你刚学 Android 开发,又想找个项目综合练练,Android 天气这个案例挺值得一看。不重不难,关键点全有,适合边学边改边实践。

zip 文件大小:2.62MB