【问题标题】:Facebook and Parse integration unrecognized selectorFacebook 和 Parse 集成无法识别的选择器
【发布时间】:2015-06-09 13:16:42
【问题描述】:

我正在尝试将 Facebook 登录与我的 Parse 后端集成。运行应用程序后,我收到

[PFFacebookUtils initializeFacebookWithApplicationLaunchOptions:]:无法识别的选择器发送到类 xxxxxx

上线

PFFacebookUtils.initializeFacebookWithApplicationLaunchOptions(nil)

PFFacebookUtils.initializeFacebookWithApplicationLaunchOptions(launchOptions)

我在这里尝试过解决方案:https://developers.facebook.com/docs/ios/troubleshooting#unrecognizedselector (添加 -ObjC 标志),并已清除派生数据,但无济于事。

我正在使用 Parse SDK 1.7.2、Facebook SDK 4.0.1 和 PFFacebookUtilesV4 框架。

完整的错误如下:

2015-05-03 14:22:25.742 hotPotato[49116:1453068] +[PFFacebookUtils 初始化FacebookWithApplicationLaunchOptions:]:无法识别 选择器发送到类 0x10f524048 2015-05-03 14:22:25.810 hotPotato[49116:1453068] *** 由于未捕获的异常而终止应用程序 'NSInvalidArgumentException',原因:'+[PFFacebookUtils 初始化FacebookWithApplicationLaunchOptions:]:无法识别 选择器发送到类 0x10f524048'

【问题讨论】:

    标签: ios facebook swift parse-platform


    【解决方案1】:

    我遇到了同样的问题。 我的错误是我在项目中也添加了ParseFacebookUtils.framework

    删除它,一切都会好起来的:)

    【讨论】:

    • 这解决了我的问题!谢谢@zurakach
    【解决方案2】:

    可能有点晚了,但我通过使用 Facebook SDK 中的 Bolts.framework 而不是 Parse SDK 解决了这个问题。

    【讨论】:

      【解决方案3】:

      确保您已将正确的框架导入桥接头:

      #import <FBSDKCoreKit/FBSDKCoreKit.h>
      #import <ParseFacebookUtilsV4/PFFacebookUtils.h>
      

      还要检查所需的框架是否包含在目标的常规选项卡下的Linked Frameworks and Libraries列表中。

      如果您手动添加了框架,请转到 Build Settings 选项卡,并确保 Search Paths 包含 Parse 和 Facebook 框架的路径。 我的看起来像这样:

      $(inherited)
      $(PROJECT_DIR)/Vendor/Facebook
      $(PROJECT_DIR)/Vendor/Parse
      

      application(application:, didFinishLaunchingWithOptions:)委托方法中的PFFacebookUtils初始化调用应该遵循Parse初始化方法:

      Parse.setApplicationId("<APP_ID>", clientKey:"<CLIENT_KEY>")
      PFFacebookUtils.initializeFacebookWithLaunchOptions(launchOptions)
      

      如果你还没有这样做,我建议你参考 Parse 自己的指南:

      https://parse.com/docs/ios_guide#fbusers-setup/iOS

      【讨论】:

      • 我已经在这里尝试了所有方法,并且我的应用程序最近正在运行。自上次工作以来我唯一改变的是我移动了 Parse 库文件,但我重新添加了它们并重置了搜索路径。
      • @milesper 如果您可以粘贴整个unrecognized selector 行,那将非常有帮助。
      • 哪一部分?整行代码都贴出来了;你的意思是错误吗?
      • @milesper 尝试将鼠标悬停在构建设置下的特定路径设置上,路径应在工具提示中展开。
      • 框架搜索路径?我可以双击它们来展开它们
      【解决方案4】:

      通过引用而不是复制我的所有框架(包括我的 Parse 框架)解决了我的问题。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-01-22
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多