2015-04-04 58 views
4

我正在嘗試將Facebook登錄與我的Parse後端集成。當運行應用程序時,收到Facebook和解析集成無法識別的選擇器

[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和PFFalersUtilesV4框架。

完整的錯誤如下:

2015年5月3日14:22:25.742 hotPotato [49116:1453068] + [PFFacebookUtils initializeFacebookWithApplicationLaunchOptions:]:無法識別 選擇器發送到0x10f524048 2015 - 類05-03 14:22:25.810 hotPotato [49116:1453068] ***終止應用程序由於未捕獲的異常 'NSInvalidArgumentException' 的,原因是: '+ [PFFacebookUtils initializeFacebookWithApplicationLaunchOptions:]:無法識別 選擇器發送到0x10f524048類'

回答

0

我的問題是通過使我的所有框架包括我的Parse引用而不是被複制來解決的。

+0

已經這樣做,沒有工作。 – milesper 2015-04-28 01:52:27

1

確保您已導入正確的框架,爲您的橋接報:

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

還要檢查所需要的框架是在鏈接的框架和庫包含在您的目標的一般選項卡下名單。

如果你手動添加的框架,進入生成設置選項卡,並確保搜索路徑包含路徑解析和Facebook的框架。 礦看起來是這樣的:

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

application(application:, didFinishLaunchingWithOptions:)委託方法應遵循解析初始化方法的PFFacebookUtils初始化調用:

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

如果你還沒有這樣做了,我建議你諮詢解析自己的指南:

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

+1

我已經在這裏嘗試了一切,而且我的應用程序最近也在工作。自從上次工作以來,唯一改變的是我移動了Parse庫文件,但我重新添加了它們並重置了搜索路徑。 – milesper 2015-05-02 16:04:40

+0

@milesper如果你可以粘貼整個'無法識別的選擇器'行,這將是非常有用的。 – 2015-05-03 19:19:07

+0

哪部分?整行代碼已發佈;你的意思是錯誤嗎? – milesper 2015-05-03 19:20:24

0

可能是一個LITT晚了,但我解決了這個問題,使用Facebook SDK中的Bolts.framework而不是Parse SDK。

2

我面臨同樣的問題。 我的錯誤是我還在項目中添加了ParseFacebookUtils.framework

只要刪除它,一切都會好:)

+0

這解決了我的問題!謝謝@zurakach – PinkFloydRocks 2015-10-27 08:14:31

相關問題