0

我下载了最新的 Facebook SDK 4.6 版,我按照这里阅读的 iOS SDK 入门:https ://developers.facebook.com/docs/ios/getting-started/

我将 FBSDKCoreKit.Framework 拖放到项目中,就像指南秀一样。

在 AppDelegate.mi 的标题中写道:

//-----
#import <FBSDKCoreKit/FBSDKCoreKit.h>

@interface AppDelegate () <FBSDKApplicationDelegate>

@end
//----

我完成了入门指南的所有内容......好吧,我的问题是:

Cannot find protocol declaration 'FBSDKApplicationDelegate' did you mean 'UIApplicationDelegate'?

FBSDKCoreKit/FBSDKCoreKit.h被很好地识别,FBSDKApplicationDelegate.h在框架内,框架搜索路径在应用程序设置中......

哪里有问题?我找不到

信息:XCode 7.0、FBSdk 4.6、部署目标 9.0

4

1 回答 1

0

您不必像以前那样实现委托。

代替:

//-----
#import <FBSDKCoreKit/FBSDKCoreKit.h>

@interface AppDelegate () <FBSDKApplicationDelegate>

@end
//----

你需要这个

//-----
#import <FBSDKCoreKit/FBSDKCoreKit.h>

@interface AppDelegate () 

@end
//----

next 方法中的返回值必须是

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

   // your code

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

然后你必须实现这个方法:

- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation {
  return [[FBSDKApplicationDelegate sharedInstance] application:application
    openURL:url
    sourceApplication:sourceApplication
    annotation:annotation
  ];
}

就这样。

于 2015-10-04T10:50:23.453 回答