xamarin.ios / monotouch facebook回调

时间:2013-03-13 21:24:45

标签: xamarin xamarin.ios

我正在尝试通过facebook在xamarin ios应用程序中实现登录, 以monotouch-bindings为例 我正在检查用户是否使用以下方式登录AppDelegate:

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

问题是当用户没有登录时,我正在导航到另一个viewController以便他登录。当他试图登录Facebook应用程序打开时,但登录后我没有得到回调。 如果我在AppDelegate中执行整个流程,那么回调就可以了。 我注意到在AppDelegate中有两个覆盖实现:

public override bool HandleOpenURL

public override bool OpenUrl

他们都返回return facebook.HandleOpenURL (url); facebook在AppDelegate中声明,但也在登录viewController中声明,所以我猜这是问题的一部分。 我是iOS和单声道触控的新手,所以我希望这是有道理的。 任何想法如何解决?或者可能是未从AppDelegate执行Facebook登录的示例?

谢谢!

1 个答案:

答案 0 :(得分:1)

我本周也花了几个小时,试图让它发挥作用,我的问题就像你的一样。是的,你需要覆盖OpenUrl,否则你将无法处理FBsession中的任何内容,这就是为什么它不适合你。

所以按照美味的例子中的说明实现它,它应该可以工作:) Scrumptious