美文网首页
Twitter Develop

Twitter Develop

作者: a2ebcc3676c1 | 来源:发表于2016-03-09 17:21 被阅读635次

    最近做了Twitter的第三方登录,现在把流程记录下来,以供参考。

    首先要拥有一个Twitter账号,没有的童鞋可以选择 注册账号。账号建议使用邮箱,暂时不要绑定手机号(否则可能会导致部分SDK无法使用)。

    有了账号之后,登陆Twitter Developers,创建自己的application。

    Documentation Manage My Apps

    创建一个新的APP

    Create New App

    填写相关数据

    Application Details

    这里要注意一下Callback URL,不要填百度。

    点击Update Settings 获得Key 和 Secret

    OK,下一步下载Fbric

    注册Fabric账号并登陆,之后按照提示下载SDK就OK了,因为我需要的仅仅是第三方登录,所以我只下载了TwitterKit。

    TwitterKit

    按照提示导入SDK,代码稍微有改动

    - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions{

    [[Twitter sharedInstance] startWithConsumerKey:@"Key" consumerSecret:@"Secret"];

    [Fabric with:@[[Twitter class]]];

    return YES;

    }

    在实现登录按钮的界面

    TWTRLogInButton *logInButton = [TWTRLogInButton buttonWithLogInCompletion:^(TWTRSession *session, NSError *error) {

    NSLog(@"userID: %@ \n userName: %@ \n authToken: %@ \n authTokenSecret: %@ ",session.userID,session.userName,session.authToken,session.authTokenSecret);

    }];

    得到回调的 session 后,可以进一步获取用户信息

    TWTRAPIClient *client = [[TWTRAPIClient alloc] init];

    [client loadUserWithID:session.userID completion:^(TWTRUser * _Nullable user, NSError * _Nullable error) {

    NSLog(@"userID = %@ \n name = %@ \n 用户头像链接 = %@",user.userID,user.name,user.profileImageURL);

    }];

    如果使用 TWTRLogInButton ,按钮的UI是固定的。如果想使用自定义的UI,可以调用下面的方法,得到 session 是一样的。

    [[Twitter sharedInstance] logInWithCompletion:^(TWTRSession * _Nullable session, NSError * _Nullable error) {

    if (!session) {

    NSLog(@"Login error: %@", [error localizedDescription]);return ;

    }

    NSLog(@"userID: %@ \n userName: %@ \n authToken: %@ \n authTokenSecret: %@ ",session.userID,session.userName,session.authToken,session.authTokenSecret);

    }];

    Twitter类里还提供了其它API,如分享、推文等,用到的童鞋可以自行研究。

    注:一般我们用 canOpenUrl 来判断本地是否安装某应用,这时需要在info.plist 里做一些设置,添加 LSApplicationQueriesSchemes 在其下添加item ,类型string,值为twitter即可

    相关文章

      网友评论

          本文标题:Twitter Develop

          本文链接:https://www.haomeiwen.com/subject/wfxtlttx.html