我将FB.Init()的Status标志保持为true。在我退出我的应用程序后,FB再也没有重新登录。我每次都必须重新登录。虽然它说它会尝试从有效的会话数据重新登录。我在这里缺少什么?
以下是代码:
private void CallFBInit()
{
FB.Init(OnInitComplete, OnHideUnity);
}
private void OnInitComplete()
{
if (FB.IsLoggedIn)
{
Debug.Log ("Loggedin userid: " + FB.UserId);
return;
}
}
private void OnHideUnity(bool isGameShown)
{
if (!isGameShown)
{
// pause the game - we will need to hide
Time.timeScale = 0;
}
else
{
// start the game back up - we're getting focus again
Time.timeScale = 1;
}
}
private void LoginFB()
{
FB.Login("email,public_profile, user_friends", LoginCallback);
}
private void LogoutFB()
{
if (FB.IsLoggedIn)
{
FB.Logout();
}
}
private void LoginCallback(FBResult result)
{
// Call Cognito Login for FB as well
AWSManager.FacebookLoginCallback (result);
if (result.Error != null)
{
}
else if (!FB.IsLoggedIn)
{
}
else if(FB.IsLoggedIn)
{
}
}
public void OnClickedOnFBButton()
{
//Debug.Log ("clicked on facebook button");
if(FB.IsLoggedIn)
{
return;
}
LoginFB ();
}
编辑:它只在iOS上提供问题,在Android上运行良好。
答案 0 :(得分:0)
你是否在facebook初始化后检查了FB.IsLoggedIn。从我在代码中看到的是,在实际初始化fb之前可能会调用OnClickedOnFBButton()。所以FB.IsLoggedIn总是会返回false,再次调用你的loginFB()方法