PFFacebookUtils -

Posted

技术标签:

【中文标题】PFFacebookUtils -【英文标题】: 【发布时间】:2015-12-21 13:43:26 【问题描述】:

我正在关注this 教程,将 facebook 登录与 Messenger 集成。当我编译代码的第一部分时,我收到错误:

Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'You must initialize PFFacebookUtils with a call to +initializeFacebookWithApplicationLaunchOptions'

我遇到了多个线程,包括 this 一个,但是这已在我正在使用的新版本中修复,因此无法用于解决我的问题。

我连接了一个运行教程代码的按钮:

- (IBAction)loginWithFacebook:(id)sender

    // Set permissions required from the facebook user account
    NSArray *permissionsArray = @[ @"user_about_me", @"user_relationships", @"user_birthday", @"user_location"];

    // Login PFUser using Facebook
    [PFFacebookUtils logInInBackgroundWithReadPermissions:permissionsArray block:^(PFUser *user, NSError *error)
    
        if (!user)
        
            NSLog(@"Uh oh. The user cancelled the Facebook login.");
        
        else if (user.isNew)
        
            NSLog(@"User signed up and logged in through Facebook!");
        
        else
        
            NSLog(@"User logged in through Facebook!");
        
    ];

另外,我的 AppDelegate.m 有:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 
    // Override point for customization after application launch.

    [[FBSDKApplicationDelegate sharedInstance] application:application didFinishLaunchingWithOptions:launchOptions];


    return YES;

【问题讨论】:

【参考方案1】:

该指南并未提及使其工作所需的所有代码。 Parse 在他们的ios Guide 中有更多信息。要专门解决此问题,请在您的 didFinishLaunchingWithOptions 方法中,将您的 FBSDKApplicationDelegate 调用替换为以下内容:

[PFFacebookUtils initializeFacebookWithApplicationLaunchOptions:launchOptions];

【讨论】:

【参考方案2】:

我做了更多的研究,偶然发现了this 的问题。我将它与 Joey 的答案结合起来,然后就可以使用了。

首先,我替换了

[[FBSDKApplicationDelegate sharedInstance] application:application didFinishLaunchingWithOptions:launchOptions];

[[FBSDKApplicationDelegate sharedInstance] application:application didFinishLaunchingWithOptions:launchOptions];

然后,我转到我的信息 plist 并将 LSApplicationQueriesSchemes 类型从字符串更改为字符串数组并添加项目 fbauth2

【讨论】:

以上是关于PFFacebookUtils -的主要内容,如果未能解决你的问题,请参考以下文章

PFFacebookUtils.initializeFacebookWithApplicationLaunchOptions(launchOptions) 挂起应用

类“PFFacebookUtils”的重复接口定义 - IOS

localDataStore 和 PFFacebookUtils 崩溃

在相同情况下,PFFacebookUtils 登录结果为无效范围

PFFacebookUtils 登录后台无法将值转换为 PFUserResultBlock

找不到词法或预处理器问题“ParseFacebookUtils/PFFacebookUtils.h”文件