gpt4 book ai didi

android - 如果您有 Facebook 应用程序,有没有办法通过 Android 上的 Facebook api 注销?

转载 作者:搜寻专家 更新时间:2023-11-01 08:13:08 26 4
gpt4 key购买 nike

我正在使用 Facebook 的 Android API,除了一个异常(exception),一切都按预期工作。当我离开设备上安装的 Facebook 应用程序(这是独立应用程序,与 API 或我的应用程序无关)时,我在我的 Facebook 对象上调用 logout() ,它正确地使 Facebook 对象无效但下次我启动该对象时,它会从 Facebook 应用程序检索登录数据,并且登录仍然存在。

如果我的设备上没有安装 Facebook 应用程序,则一切正常。

我很好奇是否存在我忽略的某种机制来强制 Facebook 应用程序不保留登录名,或者我是否不得不告诉我的客户(这是为客户定制的应用程序,永远不会上市) ) 当他们运行这个时,他们必须确保从他们运行这个的设备上卸载 Facebook 应用程序?

最佳答案

当您说 Facebook Android API 时,您指的是 Facebook Android SDK 吗?

如果是这样,当您调用授权时,您可以选择指定是单点登录 (SSO) 还是 OAuth 2.0 对话授权。默认为单点登录。如果您使用 SSO 授权,并且 Facebook 应用程序存在并已登录,则授权成功,无需靠近 Facebook 服务器。

如果您不使用 SSO,而是使用 OAuth 2.0 对话框授权,用户最初会看到一个登录对话框和一个应用程序授权对话框,在成功登录/授权后,SDK 会保留访问 token 以供后续授权。

遗憾的是,SDK 注销不考虑 SSO。它执行 OAuth 2.0 expiresession 并清除访问 token ,但它不会告诉 Facebook 应用程序用户已注销。因此,这意味着当您进行下一次授权(假设它是 SSO)时,Facebook 应用程序仍处于登录状态,然后授权成功,无需靠近 Facebook 服务器。

前进的一种方法是不使用 SSO 并需要 OAuth 2.0 对话授权(使用 authorize(FORCE_DIALOG_AUTH))。这将要求用户登录,即使 Facebook 应用程序存在并已登录,但它会阻止登录持续存在。

关于android - 如果您有 Facebook 应用程序,有没有办法通过 Android 上的 Facebook api 注销?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7679875/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com