2013-09-30 25 views
0

我試圖將新的Facebook SDK集成到我的應用程序。我的問題是,是否所有的會議方法都必須從應用程序代理中調用,或者只需要那些需要離開應用程序的應用程序(即,通過safari爲沒有fb應用程序的用戶登錄?)Facebook的iOS SDK:需要在appdelegate

I 「VE直接從視圖控制器通過打過電話請求:

if (FBSession.activeSession.isOpen) { 
     [[FBRequest requestForGraphPath: ... 

,它似乎沒有問題返回,但我只是想確保,這將始終是這種情況之前,我去這樣做,在更多的地方。

回答

0

不需要從應用程序代理調用與fb相關的調用。你可以從你喜歡的任何班級打電話給他們。你應該已經正確配置了fb ios sdk。

+0

很感謝您的確認! – JoshDG

0

我覺得使用Facebook SDK非常痛苦。在開始時(Facebook的早期版本),您需要撥打UIAppDelegate的電話,但現在您可以從任何地方使用它。我也會推薦一些東西來緩解你的痛苦:https://github.com/mobitar/Zuckerkit

+0

有趣。我會看看這個軟件包,好像它有很多有用的東西。 – JoshDG

+0

我做了一個小Gist以及檢索用戶圖片:https://gist.github.com/RuiAAPeres/6383419 – Peres

0

要增加Guarav提到的內容,FB調用可以從iOS代碼中的任何位置進行。

如果您已成功將Facebook SDK添加到您的項目中,並且您需要從應用程序中的多個位置訪問FBSession,則可以在預編譯的標頭中添加FacebookSDK.h標頭引用.pch):

#ifdef __OBJC__ 
    #import <UIKit/UIKit.h> 
    #import <Foundation/Foundation.h> 
    #import <FacebookSDK/FacebookSDK.h> 
    ... (etc.) 
#endif 

.pch頭文件通常位於項目的「支持文件」組中。