Parse.com和Facebook登录,运行无限循环 [英] Parse.com and Facebook login, runs infinite loop

查看:162
本文介绍了Parse.com和Facebook登录,运行无限循环的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我将Parse和Facebook iOS SDK更新到最新版本,当我尝试使用Facebook登录我的应用程序崩溃时,从调试器中我可以看到它正在无限循环中调用3-4种方法。 p>

我的登录代码如下所示:

   - (void)openSession 
{
UIViewController * topViewController = self.window.rootViewController;
NSArray * permissions = [NSArray arrayWithObjects:@user_likes,@friends_likes,nil];

//使用Facebook登录PFUser
[PFFacebookUtils logInWithPermissions:permissions block:^(PFUser * user,NSError * error){
if(!user){
if(!error){
NSLog(@呃哦,用户取消了Facebook登录。
} else {
NSLog(@呃哦发生错误:%@,错误);
}
} else if(user.isNew){
NSLog(@用户注册并登录!);

if([[topViewController presentedViewController] isKindOfClass:[PALoginViewController class]]){
[topViewController dismissViewControllerAnimated:YES完成:nil];
}
} else {
NSLog(@用户已登录!);
if([[topViewController presentsViewController] isKindOfClass:[PALoginViewController class]]){
[topViewController dismissViewControllerAnimated:YES完成:nil];
}
}
}];
}

logInWithPermissions 被调用。它崩溃到Xcode,调试器显示了很多调用FB登录方法 - 数千实际:



堆栈跟踪http://f.cl.ly/items/3z270O3L1s173Z3o0V3E/Screen% 20Shot%202013-04-20%20at%2010.25.51%20 AM.png



可能是什么错误?

解决方案

这个问题在Facebook上被报告为一个错误: https://developers.facebook.com/bugs/188127071335876?browse=search_5176d24c698df3761093726



现在已经修复了,我可以确认登录现在可以工作 - 即使启用了沙箱。


I updated both Parse and Facebook iOS SDKs to the latest versions, and when I try to login using Facebook my app crashes, and from the debugger I can see that it is calling 3-4 methods in an endless loop.

My login code looks like this:

- (void)openSession
{
    UIViewController *topViewController = self.window.rootViewController;
    NSArray *permissions = [NSArray arrayWithObjects:@"user_likes", @"friends_likes", nil];

    // Login PFUser using Facebook
    [PFFacebookUtils logInWithPermissions:permissions block:^(PFUser *user, NSError *error) {
        if (!user) {
            if (!error) {
                NSLog(@"Uh oh. The user cancelled the Facebook login.");
            } else {
                NSLog(@"Uh oh. An error occurred: %@", error);
            }
        } else if (user.isNew) {
            NSLog(@"User with facebook signed up and logged in!");

            if ([[topViewController presentedViewController] isKindOfClass:[PALoginViewController class]]) {
                [topViewController dismissViewControllerAnimated:YES completion:nil];
            }
        } else {
            NSLog(@"User with facebook logged in!");
            if ([[topViewController presentedViewController] isKindOfClass:[PALoginViewController class]]) {
                [topViewController dismissViewControllerAnimated:YES completion:nil];
            }
        }
    }];
}

The error occurs when logInWithPermissions is called. It crashes into Xcode and Debugger is showing an awful lot of calls to FB login methods - thousands actually:

Stack trace http://f.cl.ly/items/3z270O3L1s173Z3o0V3E/Screen%20Shot%202013-04-20%20at%2010.25.51%20AM.png

What could be wrong?

解决方案

This issue was reported as a bug on Facebook: https://developers.facebook.com/bugs/188127071335876?browse=search_5176d24c698df3761093726

It has now been fixed, and I can confirm that logging in now works - even with Sandbox enabled.

这篇关于Parse.com和Facebook登录,运行无限循环的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆