xcode - 即使在 Xcode 6.3 中更新了 Facebook,AppDelegate 应用程序功能中的 Facebook SDK 错误

标签 xcode swift appdelegate

所以我更新了 Xcode 并得到了一堆错误,这些错误很容易修复,但是在更新 FBSDK 之后,我的 AppDelegate 中出现了一个我似乎无法修复的错误:

/Users/wylerzahm/Desktop/AppName/AppName/AppDelegate.swift:23:58: Cannot invoke 'application' with an argument list of type '(UIApplication, openURL: NSURL?, sourceApplication: NSString?, annotation: [NSObject : AnyObject]?)'

实际报错的函数如下:

func application(application: UIApplication, openURL url: NSURL?, sourceApplication: NSString?, annotation: [NSObject: AnyObject]?) -> Bool {
    return FBSDKApplicationDelegate.sharedInstance().application(application, openURL: url, sourceApplication: sourceApplication, annotation: annotation)
}

该函数是 Facebook 登录工作所必需的。任何帮助表示赞赏。 被调用的函数如下:

@interface FBSDKApplicationDelegate : NSObject

+ (instancetype)sharedInstance;

- (BOOL)application:(UIApplication *)application
        openURL:(NSURL *)url
  sourceApplication:(NSString *)sourceApplication
     annotation:(id)annotation;


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

如果有人能帮忙,请帮忙!

最佳答案

我在使用 Swift 1.2 升级到 XCode 6.3 后也遇到了这个问题。

问题似乎是函数中的 sourceApplication 类型从 NSString 更新为 String:

func application(application: UIApplication, openURL url: NSURL, sourceApplication: NSString?, annotation: AnyObject) -> Bool {
    return FBSDKApplicationDelegate.sharedInstance().application(application, openURL: url, sourceApplication: sourceApplication, annotation: annotation)
}

所以应该是:

func application(application: UIApplication, openURL url: NSURL, sourceApplication: String?, annotation: AnyObject?) -> Bool {
    return FBSDKApplicationDelegate.sharedInstance().application(application, openURL: url, sourceApplication: sourceApplication, annotation: annotation)
}

干杯!

编辑:正如 Ruud Kalis 所指出的,注释类型也从 AnyObject 更新为 AnyObject?

关于xcode - 即使在 Xcode 6.3 中更新了 Facebook,AppDelegate 应用程序功能中的 Facebook SDK 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29581015/

相关文章:

带有照片和图库按钮的 iOS 全局菜单

xcode - Xcode 的 .ssh key 和 Github 帐户是否有内部配置?

ios - Swift - 调整 fontSize 以适应布局的宽度(以编程方式)

iOS App Entitlement 'com.apple.developer.payment-pass-provisioning' 未合并到 Xcode 9 的构建中

ios - 将单元格滚动到 View 中时 UITableView 滞后

objective-c - Swift Optional Int(Int?)可以通过桥接暴露给 Objective-C 吗?

swift - 如何在 NSOutlineView 中实现不同的上下文菜单

ios - 有什么方法可以快速从 AppDelegate 调用 gui 元素吗?

ios - 如何以编程方式快速保持 Aspect-fixed UIView 在任何屏幕方向填满屏幕?

ios - 在 AppDelegate Swift 中传递全局用户名