ios - 未捕获的异常 'NSInternalInconsistencyException' 必须通过调用 +initializeFacebookWithApplicationLaunchOptions 来初始化 PFFFacebookUtils

标签 ios objective-c facebook parse-platform

正在开发我的第一个 iOS 应用程序(实际上是有史以来的第一个应用程序)!我正在尝试实现与 Parse 的 PFUser 一起使用的 facebook 登录屏幕。

我有一个 UIButton“使用 Facebook 登录”,它使用以下代码连接到一个操作:

-(IBAction) facebookLogin:(id)sender {

[PFFacebookUtils logInInBackgroundWithReadPermissions:self.permissions 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!");
    }
}];
}

我在哪里

@property (strong, nonatomic) NSArray *permissions;

self.permissions = @[@"public_profile"];

所以它运行良好,但是当我在 Ios 模拟器中按下“使用 FaceBook 登录”按钮时,应用程序终止并且我在终端中看到以下内容:

由于未捕获的异常“NSInternalInconsistencyException”而终止应用程序,原因:“您必须通过调用 +initializeFacebookWithApplicationLaunchOptions 来初始化 PFFFacebookUtils”

这对我来说没有意义,因为在我的 AppDelegate.m 文件中我已经初始化了 Facebook:

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


[Parse enableLocalDatastore];


[Parse setApplicationId:@"..."
              clientKey:@"..."];

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

[PFAnalytics trackAppOpenedWithLaunchOptions:launchOptions];

[PFFacebookUtils initializeFacebookWithApplicationLaunchOptions:launchOptions];

return 1;
}

如果有任何帮助,我将不胜感激!

最佳答案

如果第二个示例代码正确,它将返回语句:

return [[FBSDKApplicationDelegate sharedInstance] application:application

并且不执行以下行。从该语句中删除 return,以便执行以下语句。

也因为:

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

必须返回一个BOOL,返回语句应该是YES,而不是1。 Objectice 中的 bool 值是 YESNO

关于ios - 未捕获的异常 'NSInternalInconsistencyException' 必须通过调用 +initializeFacebookWithApplicationLaunchOptions 来初始化 PFFFacebookUtils,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30131171/

相关文章:

ios - 使用 UISlider 应用 GPUImage 过滤器

objective-c - 遍历二维数组,使用for-in语法

objective-c - 播放音频时,该应用程序崩溃且设备接听电话

javascript - 使用 JS 为 facebook 调度程序获取正确的 unix 时间戳

ios - Facebook iOS SDK - 获取用户相册

ios - UIScrollView 以编程方式居中可调整大小的 View

ios - 在 UITextView Objective C 中检测 Tap 不可编辑和不可选择

ios - iOS中如何停止摇动手势?

ios - 在 tableView 中重新加载后保持滚动位置

java - 使用 Android 从 Facebook 获取信息