TencentSessionDelegate
TencentSessionDelegate为开放接口回调协议,第三方应用需要实现每条需要调用的API的回调协议。
// 退出登录的回调 - (void)tencentDidLogout; |
|
// 因用户未授予相应权限而需要执行增量授权。在用户调用某个api接口时,如果服务器返回操作未被授权,则触发该回调协议接口,由第三方决定是否跳转到增量授权页面,让用户重新授权。 - (BOOL)tencentNeedPerformIncrAuth :(TencentOAuth *)tencentOAuth withPermissions:(NSArray *)permissions; |
|
参数 | 含义 |
tencentOAuth | 登录授权对象 |
permissions | 需增量授权的权限列表 |
返回值 | 是否仍然回调返回原始的api请求结果 |
备注:不实现该协议接口则默认为不开启增量授权流程。若需要增量授权请调用[TencentOAuth incrAuthWithPermissions:]
注意:增量授权时用户可能会修改登录的帐号
// [该逻辑未实现]因token失效而需要执行重新登录授权。在用户调用某个api接口时,如果服务器返回token失效,则触发该回调协议接口,由第三方决定是否跳转到登录授权页面,让用户重新授权。 - (BOOL)tencentNeedPerformReAuth:(TencentOAuth *)tencentOAuth; |
|
参数含义同上,此处不做赘述。
备注:不实现该协议接口则默认为不开启重新登录授权流程。若需要重新登录授权请调用[TencentOAuth reauthorizeWithPermissions: ]
注意:重新登录授权时用户可能会修改登录的帐号
// 用户通过增量授权流程重新授权登录,token及有效期限等信息已被更新。 - (void)tencentDidUpdate:(TencentOAuth *)tencentOAuth; |
|
参数 | 含义 |
tencentOAuth | token及有效期限等信息更新后的授权实例对象 |
// 用户增量授权过程中因取消或网络问题导致授权失败。 - (void)tencentFailedUpdate:(UpdateFailType)reason; |
|
reason为UpdateFailType枚举类型,其枚举值含义如下:
UpdateFailType | 含义 |
kUpdateFailUnknown | 未知原因 |
kUpdateFailUserCancel | 用户取消 |
kUpdateFailNetwork | 网络问题 |
以下是本协议中一系列回调函数,参数均为APIResponse类型,表示API返回结果,每个回调对应这一个操作:
// 获取用户个人信息回调 |
- (void)getUserInfoResponse:(APIResponse*) response; |
// 获取用户QZone相册列表回调 |
- (void)getListAlbumResponse:(APIResponse*) response; |
// 获取用户QZone相片列表回调 |
- (void)getListPhotoResponse:(APIResponse*) response; |
// 检查是否是QZone某个用户的粉丝回调 |
- (void)checkPageFansResponse:(APIResponse*) response; |
// 分享到QZone回调 |
- (void)addShareResponse:(APIResponse*) response; |
// 在QZone相册中创建一个新的相册回调 |
- (void)addAlbumResponse:(APIResponse*) response; |
// 上传照片到QZone指定相册回调 |
- (void)uploadPicResponse:(APIResponse*) response; |
// 在QZone中发表一篇日志回调 |
- (void)addOneBlogResponse:(APIResponse*) response; |
// 在QZone中发表一条说说回调 |
- (void)addTopicResponse:(APIResponse*) response; |
// 设置QQ头像回调 |
- (void)setUserHeadpicResponse:(APIResponse*) response; |
// 获取QQ会员信息回调 |
- (void)getVipInfoResponse:(APIResponse*) response; |
// 获取QQ会员详细信息回调 |
- (void)getVipRichInfoResponse:(APIResponse*) response; |
// sendStory分享的回调(已废弃,使用responseDidReceived:forMessage:) |
- (void)sendStoryResponse:(APIResponse*) response; |
除了以上一对一的回调函数,还有一个回调函数集成了几个操作,如下:
// 社交API统一回调接口 |
- (void)responseDidReceived:(APIResponse*)response forMessage:(NSString *)message; |
参数 | 含义 |
response | API返回结果 |
message | 响应的消息,目前支持‘SendStory’,‘AppInvitation’,‘AppChallenge’,‘AppGiftRequest’ |
// post请求的上传进度 |
- (void)tencentOAuth :(TencentOAuth *)tencentOAuth didSendBodyData :(NSInteger)bytesWritten totalBytesWritten :(NSInteger)totalBytesWritten totalBytesExpectedToWrite:(NSInteger)totalBytesExpectedToWrite userData :(id)userData; |
参数 | 含义 |
tencentOAuth | 返回回调的tencentOAuth对象 |
bytesWritten | 本次回调上传的数据字节数 |
totalBytesWritten | 总共已经上传的字节数 |
totalBytesExpectedToWrite | 总共需要上传的字节数 |
userData | 用户自定义数据 |
// 通知第三方界面需要被关闭 |
- (void)tencentOAuth:(TencentOAuth *)tencentOAuth doCloseViewController:(UIViewController *)viewController; |
参数 | 含义 |
tencentOAuth | 返回回调的tencentOAuth对象 |
viewController | 需要关闭的viewController |