我知道此问题之前已经提出过,但所说的决议都没有帮助。与我的情况的主要区别在于我使用的是PhoneGap的FaceBook SKD。我不认为这本身就是导致这个问题,但我会让你成为这个问题的判断者。这是我测试过的一些简单代码。
facebookConnectPlugin.getLoginStatus(
function( response )
{
alert( response.status );
}, true
);
这段代码起初效果很好。似乎离开应用程序登录了一段时间会导致问题,但我并不积极。我可以肯定的是,函数回调停止触发,我必须强制注销才能解决问题。
facebookConnectPlugin.logout(
function( result )
{
},
function( error )
{
}
);
这让我相信登录状态存在问题。您可能已经注意到第一个片段中的第二个参数设置为true。据我所知,应强制getLoginStatus忽略兑现数据。根据我在SO
上发表的另一篇文章的以下信息“改善应用程序的性能,而不是每次调用 检查用户的状态将导致对Facebook的请求 服务器。在可能的情况下,缓存响应。第一次来了 调用FB.getLoginStatus的当前浏览器会话,或JS SDK是init,其状态为:true,响应对象将被缓存 SDK。对FB.getLoginStatus的后续调用将从中返回数据 这个缓存的回复。
这可能会导致用户登录(或退出)时出现问题 Facebook自上次完整会话查询以来,或者如果用户有 在帐户设置中删除了您的应用程序。
要解决此问题,请使用第二个调用FB.getLoginStatus 参数设置为true以强制往返于Facebook 刷新响应对象的缓存。“
有关如何解决此问题的任何想法?