最近研究oauth协议,为了进一步 的巩固自己的学习成果,顾完成了android的新浪客户端。他的架构如下:
UI层
微博中的各个窗体 就是所谓的各个activity
logic层
程序的核心控制调度模块,获取UI传递的数据、要执行的任务,调用微博接口,获得网络数据,返回消息,刷新(切换)UI
相当于mvc中的control,处理相应的业务逻辑.
微博接口层(新浪API已封装)
网络访问层(新浪API已封装)
Dao层
数据库操作
以上都是mvc中的model,即使相应数据操作。
下面对logic层进行一个简介:
Task类 有 程序中的任务
taskID 表示相应的业务的id
taskParams 表示 一个业务要处理的相应的参数
IWeiboActivity 所有的Activity都实现它
init() 初始化数据。
refresh() 用来刷新UI。
下面介绍一个重头戏—— MainService
作用有三:
①完成程序调度
接收任务,完成业务逻辑,返回信息,更新UI
②在后台运行(继承自Service类).
线程(实现Runnable接口).
③不断侦听UI传过来任务消息.
相应流程图如下:
这就是微博客户端的简介.