【发布时间】:2016-05-07 05:27:24
【问题描述】:
现在我有一个 iOS 应用程序,它使用 facebook SDK 使用用户 facebook 帐户登录,显然你知道这一点。这是我用来做这些事情的代码。
-(void)loginButtonClicked
{
FBSDKLoginManager *login = [[FBSDKLoginManager alloc] init];
[login logInWithReadPermissions:@[@"email"] fromViewController:self handler:^(FBSDKLoginManagerLoginResult *result, NSError *error)
{
if (error)
{
// Process error
}
else if (result.isCancelled)
{
// Handle cancellations
}
else
{
if ([result.grantedPermissions containsObject:@"email"])
{
NSLog(@"result is:%@",result);
[self fetchUserInfo];
}
}
}];
}
- (void)fetchUserInfo
{
if ([FBSDKAccessToken currentAccessToken])
{
NSLog(@"Token is available : %@",[[FBSDKAccessToken currentAccessToken]tokenString]);
[[[FBSDKGraphRequest alloc] initWithGraphPath:@"me" parameters:@{@"fields": @"id, name, link, email, birthday, bio, location, friends, hometown, friendlists"}]
startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection, id result, NSError *error) {
if (!error)
{
NSLog(@"resultis:%@",result);
}
else
{
NSLog(@"Error %@",error);
}
}];
}
}
问题是当用户删除应用程序并安装然后再次登录时,Facebook 登录对话框显示“您已经授权 {ApplicationName}”,用户必须单击确定才能返回我的应用程序。
我只希望他们只需要选项卡即可登录按钮,然后显示加载圈并成功。
有什么想法吗?
【问题讨论】:
-
你需要什么输出
-
如果用户按下登录按钮,你不想再看到这个
You have already authorized {ApplicationName} -
是的,我想要这个,我该怎么做?
标签: ios objective-c facebook