Unity fires";用户取消登录“;每次
本文关键字:登录 每次 取消 用户 quot Unity fires | 更新日期: 2023-09-27 18:29:13
我计划在WEBGL版本的游戏中使用Facebook登录。
每次我尝试登录时,我都会收到"用户取消登录",
我的应用程序是公共的,设置->高级->客户端OAuth设置-所有这些都已启用
using UnityEngine;
using System.Collections;
using System.Collections.Generic;
using Facebook.Unity;
public class FaceLogin : MonoBehaviour
{
void Awake()
{
if (!FB.IsInitialized)
{
// Initialize the Facebook SDK
FB.Init(InitCallback, OnHideUnity);
}
else
{
// Already initialized, signal an app activation App Event
FB.ActivateApp();
}
}
private void InitCallback()
{
if (FB.IsInitialized)
{
// Signal an app activation App Event
FB.ActivateApp();
// Continue with Facebook SDK
// ...
if (!FB.IsLoggedIn)
{
var perms = new List<string> {"public_profile", "email", "user_friends"};
FB.LogInWithReadPermissions(perms, AuthCallback);
}
}
else
{
Debug.Log("Failed to Initialize the Facebook SDK");
}
}
private void OnHideUnity(bool isGameShown)
{
Time.timeScale = !isGameShown ? 0 : 1;
}
private void AuthCallback(ILoginResult result)
{
if (FB.IsLoggedIn)
{
// AccessToken class will have session details
var aToken = AccessToken.CurrentAccessToken;
// Print current access token's User ID
Debug.Log(aToken.UserId);
// Print current access token's granted permissions
foreach (string perm in aToken.Permissions)
{
Debug.Log(perm);
}
}
else
{
Debug.Log("User cancelled login");
}
}
}
正如我所知,Facebook只允许应用程序在"android"、"ios"answers"Facebook画布应用程序"中使用统一的Facebook sdk。我使用了安卓和canvas的facebooksdk。在android中,为了安全起见,你应该使用一些哈希进行调试和发布模式。
在canvas中(它支持统一网络播放器、webgl等),facebook只允许作为facebookcanvas应用程序登录(即使在开发、调试模式下)。因此,如果你的应用程序不是facebook画布应用程序,你就无法登录。