我在我的应用程序中使用官方的Facebook Android SDK。
我已经成功登录,但是当我尝试以另一个用户身份登录时出现问题:
- 我点击链接,该链接显示为“已登录为[name]…不是你?”,
- 但是我的应用程序仍然继续,而且会发布到我的墙上……(就好像我点击了“允许”一样)
我发现点击该链接会导致 Facebook 异常并重试请求,因此我尝试在 catch 子句中调用 logout() 方法。
这使得可以作为 新用户 登录,但是下次运行应用程序时,
仍然会登录旧用户…(已登录为[old_user]。不是你?)
我的问题是:
为什么第一个用户的登录永久存在?
如何正确地处理“不是你”的链接点击?
我目前的解决方案是,在每次调用 authorize() 方法之前始终调用 logout() 方法,
但这迫使用户必须始终输入他/她的电子邮件/密码,这也是不能接受的。