我正在尝试在 xamarin ios 应用程序中通过 facebook 实现登录,按照monotouch-bindings的示例, 我正在检查用户是否使用以下方法登录 AppDelegate:
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 和 mono touch 的新手,所以我希望这是有道理的。任何想法如何解决它?或者可能是不从 AppDelegate 执行 Facebook 登录的示例?
谢谢!