美文网首页
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