首页 > 解决方案 > 使用未解析的标识符“SDKApplicationDelegate”

问题描述

这是 和 的Google-signin代码Facebook-signinGoogle-signin工作得很好,但 Facebook " SDKApplicationDelegate" 似乎不起作用。我已经导入了我所有的 pod ( import FacebookCore, Facebook Login, FacebookShare)。

为什么SDKApplication不工作?

import UIKit
import GoogleSignIn
import FacebookCore

@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate, GIDSignInDelegate {
    var window: UIWindow?

    func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
        GIDSignIn.sharedInstance().clientID = "1043921468178-epj1ms4mnc4tbf2j3vb0kudggfmtnc8b.apps.googleusercontent.com"
        GIDSignIn.sharedInstance().delegate = self
        return SDKApplicationDelegate.shared.application(application, didFinishLaunchingWithOptions: launchOptions)
    }

    func application(_ app: UIApplication, open url: URL, options: [UIApplication.OpenURLOptionsKey : Any] = [:]) -> Bool {
        let googleDidHandle = GIDSignIn.sharedInstance().handle(url as URL?,
                                                                sourceApplication: options[UIApplication.OpenURLOptionsKey.sourceApplication] as? String,
                                                                annotation: options[UIApplication.OpenURLOptionsKey.annotation])
        let facebookDidHandle = SDKApplicationDelegate.shared.application(app, open: url, options: options)

         return googleDidHandle || facebookDidHandle
    }

标签: iosswiftxcodefacebook

解决方案


我遇到了同样的问题,我找到的解决方案是将import FBSDKCoreKit其重命名为ApplicationDelegate,但我所做的是将版本降级FacebookCoreFacebookLogin以前的版本(我正在使用0.5.0)Facebook SDK 似乎在这个新版本上有很多错误版本,我建议你也这样做。


推荐阅读