我正在安装Facebook Graph API,我目前停留在以下位置。似乎我无法从场景委托中找到应用程序委托。
如果您使用的是iOS 13或更高版本,请将以下方法添加到 您的SceneDelegate
// Swift
//
// SceneDelegate.swift
func scene(_ scene: UIScene, openURLContexts URLContexts: Set<UIOpenURLContext>) {
guard let url = URLContexts.first?.url else {
return
}
ApplicationDelegate.shared.application(
UIApplication.shared,
open: url,
sourceApplication: nil,
annotation: [UIApplication.OpenURLOptionsKey.annotation]
)
}
应用上述方法时,出现以下错误。
Cannot find 'ApplicationDelegate' in scope
答案 0 :(得分:2)
在你的 SceneDelegate 中导入 FBSDKCoreKit 并且它工作正常
答案 1 :(得分:1)
ApplicationDelegate
是一个协议。您不能向协议发送方法-您必须向符合该协议的对象发送消息。您需要在应用程序中找到符合ApplicationDelegate
协议的对象。您使用ApplicationDelegate
单例的UIApplication
属性找到delegate
。 ({UIApplication.shared
是UIApplication
类的方法,它返回指向UIApplication
单例的指针。)
您想要的语法是
UIApplication.shared.delegate?.application(
UIApplication.shared,
open: url,
sourceApplication: nil,
annotation: [UIApplication.OpenURLOptionsKey.annotation]
)