c# - FB.Logout() 在 Facebook UnitySDK 中不起作用

标签 c# facebook authentication unity3d facebook-unity-sdk

我已经使用 FB.Login 函数成功登录 FB。现在我想退出:

FB.Logout();
Debug.Log("FB IS LOGGED IN " + FB.IsLoggedIn);

我希望上面的代码将 FB.IsLoggedIn 的值打印为 false,并在下一个 FB.Login 时要求我输入登录名和密码。

事实上 FB.IsLoggedIn 的值为真,我没有被注销:下一次调用 FB.Login 不会要求输入密码,我也没有当我在浏览器中打开 Facebook 网站时被注销。

我还尝试使用未记录的请求 https://www.facebook.com/logout.php?next=[YourAppURL]&access_token=[ValidAccessToken] 但它没有对我有任何影响。

如何在我的独立 unity 应用程序中将用户从 facebook 注销?

其实我需要的是使用不同的登录名和密码登录。

也许我可以以某种方式使访问 token 无效,这将导致 FB 再次要求我输入登录名和密码?

非常感谢任何帮助。

SDK 版本:5.0.1

构建版本:140401.725cc2ecbc9002a

Unity 版本 4.3.3f1 (c8ca9b6b9936)

最佳答案

我相信 FB.Logout 操作是异步的,调用 FB.Logout() 后 FB.IsLoggedIn 的值会立即为真。 If you look at the documentation ,它说:

You almost certainly should not use this function, which is provided primarily for completeness. Having a logout control inside a game that executes a Facebook-wide logout will violate users' expectations. Instead, allow users to control their logged-in status on Facebook itself.

关于c# - FB.Logout() 在 Facebook UnitySDK 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23244611/

相关文章:

c# - ReSharper,如何显示所有提示?任何键盘

Android - 附加到 Facebook.authorize() 的 DialogListener 中的方法没有被击中

facebook - FB.ui share_open_graph 奇怪的对话框行为

java - 找出 Facebook 用户是否是 Spring Social/java 中的应用程序管理员

c# - 零星的 MessageLockLostException 但锁未过期并且是同一个 MessageReceiver 实例

c# - 尝试使用 com.android.future.usb.UsbAccessory 和 UsbManager 命名空间

c# - 从两组日期范围 C# 中查找差距日期范围

angularjs - 使用 MEAN + Passport 根据用户角色更改 View

php - Auth::login() 无法正常工作 laravel 5.7

javascript - AngularJS 身份验证和基于 XSRF token