iOS 三方分享登录推送

iOS QQ原生的登录分享

2018-05-28  本文已影响16人  HH思無邪

创建应用获取APPID

  1. 环境搭载,下载官方iOSsdk,照着参考SDK 环境搭建-iOS就可以搭建好
  1. 添加白名单
    QQ与QQ空间白名单:mqzoneopensdk、mqzoneopensdkapi、mqzoneopensdkapi19、mqzoneopensdkapiV2、mqqOpensdkSSoLogin、mqqopensdkapiV2、mqqopensdkapiV3、wtloginmqq2、mqqapi、mqqwpa、mqzone、mqq。
白名单
  1. 添加 URL scheme
URL scheme

接入代码

AppDelegate中代码

  1. 引入头文件并遵循代理


    引入头文件并遵循代理
  2. 处理跳转请求


ViewController.m中代码

  1. QQ登录

    // appID是在腾讯开放平台创建应用所分配的
    TencentOAuth loginOAuth = [[TencentOAuth alloc] initWithAppId:appID andDelegate:self];
    NSArray permissions = @[kOPEN_PERMISSION_GET_SIMPLE_USER_INFO, kOPEN_PERMISSION_ADD_SHARE, kOPEN_PERMISSION_GET_INFO, kOPEN_PERMISSION_GET_USER_INFO];
    [loginOAuth authorize:permissions];
    

permissions是请求权限类型数组,权限内容如下图:


  1. 请求登录后,会跳转到手机QQ获取权限,之后可以在回调代理中处理登录状态

    QQ登录成功后,如果想要获取QQ用户信息,则可在tencentDidLogin方法中编写下述代码:
    - (void)tencentDidLogin {
    // 判断是否获取到Access Token凭证,用于后续访问各开发接口,例如:发表说说到QQ空间、获取用户QQ控件相册列表等
    if (_loginOAuth.accessToken) {
    // 获取用户信息
    [_loginOAuth getUserInfo];
    }
    }
    接下来,在getUserInfoResponse:方法中获取用户信息:
    - (void)getUserInfoResponse:(APIResponse *)response {
    NSLog(@"用户信息:%@",response);
    }
    

QQ分享


参考原文:https://www.jianshu.com

上一篇下一篇

猜你喜欢

热点阅读