2013-03-13 60 views
1

我想實現在xamarin IOS應用程序通過Facebook登錄, 繼使用這種從monotouch-bindings 如果用戶在登錄的AppDelegate我檢查一個例子:xamarin.ios/MonoTouch的Facebook的回調

var sessionDelegate = new SessionDelegate (this); 
facebook = new Facebook (AppId, sessionDelegate); 
if (facebook.IsSessionValid) { 
    ShowLoggedIn(); 
} 
else 
{ 
    ShowLoggedOut(); 
} 

問題是當用戶沒有登錄時,我正在導航到另一個viewController以便他登錄。當他嘗試登錄Facebook應用程序時,但登錄後我沒有收到回調。 如果我在AppDelegate中完成整個流程,則回調起作用。 我注意到,在AppDelegate中有2個覆蓋實現:

public override bool HandleOpenURL 

public override bool OpenUrl 

他們都返回return facebook.HandleOpenURL (url); Facebook是在AppDelegate中聲明,而且在登錄的viewController,所以我想這是問題的一部分。 我是新來的iOS和單聲道觸摸,所以我希望這是有道理的。 任何想法如何解決它?或者可能是Facebook登錄不能從AppDelegate執行的例子?

謝謝!

回答

1

我本週也花了好幾個小時,試圖讓它工作,我的問題就像你的問題。是的,你需要重寫OpenUrl,否則你將無法處理FBsession中的任何內容,這就是爲什麼它不適合你。

所以實現其作爲美味爲例進行說明,它應該工作:) Scrumptious

+0

是的,我知道需要覆蓋。但是,如何在嘗試從另一個視圖(而不是從AppDelegate)登錄時獲得回調? – 2013-03-14 09:43:56

+0

林不知道你的意思?你沒有登錄視圖控制器? – 2013-03-14 10:13:04