正如标题所说,在我打电话
之前,我的项目永远不会打开FB登录界面[facebook logout];
当我已经登录时这是有道理的,但它也会在启动时发生(即用户尚未登录)。
嗯......我刚刚尝试在模拟器中重置内容和设置,这似乎解决了问题。为了我自己的安心,为什么当我关闭模拟器并重新运行项目时,它不会恢复到应用程序为“新”并且之前未运行或恢复状态的状态 - 从而登录用户信息会立即可用吗?
在我的设备上,我刚测试了这个:
它是否以某种方式保留了之前已登录的事实?如果是这样,是否有“loggedInAlready”变量或类似的东西我可以检查?
答案 0 :(得分:0)
将此添加到didFinishLaunchingWithOptions
if([facebook isSessionValid])//if already able to log in
{
[self loginToFacebook];//attempt to login automatically on startup
}
似乎已经解决了这个问题。我猜是因为我有:
if([facebook isSessionValid]){
[facebook login];
}
在登录按钮按下,当它恢复时它仍处于有效会话中,因此按下按钮不会做任何事情,直到注销按钮结束会话。 现在它会自动检查会话在启动时是否有效,如果是,它会直接登录给我。
:-)一切都很顺利。