需要实现用户的增量授权:
实现以下代理方法即可正常授权登录:
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
- (BOOL)tencentNeedPerformIncrAuth:(TencentOAuth *)tencentOAuth withPermissions:(NSArray *)permissions
{
// incrAuthWithPermissions是增量授权时需要调用的登录接口
// permissions是需要增量授权的权限列表
[tencentOAuth incrAuthWithPermissions:permissions];
return NO; // 返回NO表明不需要再回传未授权API接口的原始请求结果;
// 否则可以返回YES
}
- (void)tencentDidUpdate:(TencentOAuth *)tencentOAuth
{
// _labelTitle.text = @"增量授权完成";
NSLog(@"增量授权完成");
if (tencentOAuth.accessToken
&& 0 != [tencentOAuth.accessToken length])
{ // 在这里第三方应用需要更新自己维护的token及有效期限等信息
// **务必在这里检查用户的openid是否有变更,变更需重新拉取用户的资料等信息** _labelAccessToken.text = tencentOAuth.accessToken;
}
else
{
NSLog(@"增量授权不成功,没有获取accesstoken");
}
}
- (void)tencentFailedUpdate:(UpdateFailType)reason
{
switch (reason)
{
case kUpdateFailNetwork:
{
// _labelTitle.text=@"增量授权失败,无网络连接,请设置网络";
NSLog(@"增量授权失败,无网络连接,请设置网络");
break;
}
case kUpdateFailUserCancel:
{
// _labelTitle.text=@"增量授权失败,用户取消授权";
NSLog(@"增量授权失败,用户取消授权");
break;
}
case kUpdateFailUnknown:
default:
{
// _labelTitle.text=@"增量授权失败,未知错误";
NSLog(@"增量授权失败,未知错误");
break;
}
}
}
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>