对于使用 Facebook Javascript SDK 的移动 Web 应用程序,我们希望检查用户的登录状态,然后在必要时显示 Facebook 登录对话框。以下代码在我们的 Web 应用程序中给定按钮的单击处理程序中运行:
$('#button').click(function() {
FB.getLoginStatus(function(response) {
if (response.status === 'connected') {
// do something with the logged in and authorized user
} else if (response.status === 'not authorized') {
// logged in but has not authorized our app
} else {
// not logged in
FB.login();
}
});
});
确保用户没有登录到 Facebook,这可以正常工作并在按下按钮时显示桌面网络浏览器的登录对话框,但不适用于移动网络(至少不适用于各种浏览器上的 Android,我不目前可以使用 iPhone)。移动网络应用程序上什么都没有出现,当我禁用弹出窗口阻止程序时,我会收到一个提示,询问我是否要允许这个弹出窗口,这很有效。
有谁知道为什么行为不同和/或已知/标准的解决方法是什么?谢谢!