【问题标题】:Use of unresolved identifier sourceApplication Facebook SDK使用未解析的标识符 sourceApplication Facebook SDK
【发布时间】:2016-03-10 14:32:42
【问题描述】:

以下代码实现FB登录到我的应用程序

func application(app: UIApplication, openURL url: NSURL, options: [String :    AnyObject]) -> Bool {
    return FBSDKApplicationDelegate.sharedInstance().application(application, openURL: url, sourceApplication: sourceApplication, annotation: annotation)

但是我不断收到两条相似的错误消息,

"使用未解析的标识符'annotation' "使用未解析的标识符'sourceApplication'

我不确定是什么导致了这个错误,但我感觉它的一些代码已被弃用。有谁知道目前的替代方案是什么?

appdelegate.swift

【问题讨论】:

    标签: ios swift facebook


    【解决方案1】:

    我在我的应用委托中使用此代码并且运行良好

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

    【讨论】:

      【解决方案2】:

      你的变量名不匹配:

      您在第一行将UIApplication 声明为app,但尝试在您的return 语句中通过sourceApplication 引用它。将sourceApplication 替换为app。和annotation一样,改成options

      func application(app: UIApplication, openURL url: NSURL, options: [String :    AnyObject]) -> Bool {
          return FBSDKApplicationDelegate.sharedInstance().application(application, openURL: url, sourceApplication: app, annotation: options)
      

      【讨论】:

      • 您好 JAL,感谢您的回答,因此我实施了该修复,但现在我遇到了一个新问题,我不断收到错误“对成员应用程序的模糊引用”。这是否与使用 [String : AnyObject] 有关
      • 不应该。验证 FBSDKApplicationDelegate 有一个名为 application(...) 的函数。
      • 在这里我将编辑帖子以向您展示我所拥有的。
      • @bananibau5 如果您还有其他问题,最好提出一个新问题。
      猜你喜欢
      • 1970-01-01
      • 2016-06-09
      • 2016-01-24
      • 2018-03-12
      • 1970-01-01
      • 1970-01-01
      • 2016-02-25
      相关资源
      最近更新 更多