上节课我们把可以封装的代码都给封装起来了,让对应的控制器的代码也精简了许多,业务逻辑也更明了。今天会新增一些微博功能,里面也包含了代码封装思想。
主要内容
- 获取用户未读数
- 后台播放
本节资料
9.1 获取用户未读数
玩过微博的同学应该知道当我们隔一段时间不用微博时,应用会提醒我们有多少条微博未读,并显示在tabbar上以及应用图标上。我们首先查看接口文档,了解下怎么获取这个未读数据。这个接口在提醒接口内,如下图所示:
打开后我们可以发现,这个接口不仅可以返回未读微博数据的接口,也返回其它各种消息的未读数,例如新增粉丝,评论数等等。
当看到接口文档所需要的参数之后,我们便知又要建立一个请求参数模型了。因为几乎所有的请求参数模型都会包括access token,所以我们先创建一个只包含access token 的基类参数模型,代码如下:
@property(nonatomic,copy)NSString* access_token;
+(instancetype)param;
而且提供一个类方法,让他直接返回基本参数模型,也就是一创建参数模型的时候就给他赋值。
+(instancetype)param
{
YGBaseParam *param = [[self alloc]init];
param.access_token =[YGAccountTool account].access_token;
return param;
}
然后我们就可以创建一个专门获取未读数的参数模型YGUnreadMsgParam了,让其继承自YGBaseParam。这样他就有两个参数了,一个是uid,一个是access token。为了让接口返回的结果数据也模型化,我们还要创建一个结果模型YGUnreadResult,代码如下:
//status int 新微博未读数
//follower int 新粉丝数
//cmt int 新评论数
//dm int 新私信数
//mention_status int 新提及我的微博数
//mention_cmt int 新提及我的评论数
//group int 微群消息未读数
//private_group int 私有微群消息未读数
//notice int 新通知未读数
//invite int 新邀请未读数
//badge int 新勋章数
//photo int 相册消息未读数
/**
* 新微博未读数
*/