Awesome
#RxWeather
##@Deprecated
简介
这是一个简单的天气预报项目,目的是用来演示如何使用RxJava构造一个清晰的Android应用框架,并且加入了Rxbus,为了节约时间成本,界面并没有经过特别的设计,配色和控件的摆放也没有遵循Material Design设计规范,所以,它并不具备一款Android App所应该具备的素质,为此,我深感抱歉和遗憾。
我写了一篇文章,对这个项目做更深入的描述和解释:
Architecting Android with RxJava
架构
工程结构
-
presentation: Presenters、Views、Exceptions
-
usercase: UseCase
-
model: Service、Entities
-
common: Util、Constants、Event、RxBus、RxAndroid
公开API
使用百度地图获取位置信息。
使用和风天气公开接口,获取一周天气预报(暂不支持经纬度查询)。
使用Openweathermap提供的部分资料。
用法
首先,因为目前这个版本不支持分页加载,所以,没有提供上拉加载功能。
其次,除了HeaderView天气是根据当前位置获取之外,其余天气均通过读取domain module下的city.txt文件来获取一周内天气。
通过以下步骤进行修改或增加:
-
下载Openweathermap提供的资料,city.list.json.gz这个文件,找到需要的城市json字符串,复制到city.txt中cities数组中。
-
在和风天气提供的国内城市ID列表中,找到对应城市的ID进行替换。
最后,搜索功能,输入城市地区的时候,请不要以“市”、“区”结尾,例如:用“北京”代替“北京市”,“朝阳”代替“朝阳区”。
GIF
关于开发者
- 小鄧子 - Hi4Joker@gmail.com
参考
-
Material-Movies - Saul Molinero
-
Architecting Android…The clean way? - Fernando Cejas
-
Architecting Android…The evolution - Fernando Cejas
-
What is all this Clean Architecture jibber-jabber about? - Part 1 - Pablo Guardiola
-
What is all this Clean Architecture jibber-jabber about? - Part 2 - Pablo Guardiola