首页 > 解决方案 > 每次登录游戏时,Unity Facebook SDK 都会不断要求我确认登录

问题描述

我正在使用 Unity3D 2018.2.6f1 和 Facebook SDK。

这是用户单击登录按钮后我用来登录 facebook 的代码:

            FB.Init(()=>FB.LogInWithReadPermissions
            (
                new List<string>() { "public_profile", "email" },
                result_ =>
                {
                    //....
                }
            ));

我正在测试安卓设备上的登录行为。

我第一次登录它需要用户名和密码,这很棒。但之后每次它都会提示我一条消息:

“您之前使用 Facebook 登录 myAppName。您想继续吗?”

它让我在“继续”和“取消”之间进行选择。

有没有办法避免这个消息?

例如,在游戏“硬币大师”中,我已经用 facebook 登录过一次后,每次登录游戏时都不会看到此消息。

标签: facebookunity3d

解决方案


facebook sdk 有一个 IsLoggedIn 方法来确定是否有人已经登录。您可能想在进行 loginwithreadpermission 调用之前调用它。

也许是这样的:

private void OnFacebookInitialized()
{
    if (!FB.IsLoggedIn)
      // you are not logged, call loginWithReadPermission
    else
      // you are already logged in, do something
}
// ...
FB.Init(OnFacebookInitialized); // init FB 

有关详细信息,请参阅FB 会话属性的文档


推荐阅读