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