社交网络插件无法登录

时间:2015-04-29 14:00:01

标签: android facebook unity3d social-networking prime31

我在我的facebook项目中使用Prime31(这里)的Android社交网络插件 如果我使用演示场景 - 一切都很好。如果我在单个窗口中创建3个按钮(init,login,share),它也可以正常工作。但是如果我在第一次更新(或FacebookAndroid.init()Awake)中使用Start并在我的游戏的某个窗口中登录 - 登录到FB后窗口会话无效且我不能分享任何东西。

我的Facebook控制器列表:

public class FacebookController : MonoBehaviour
{
    public static FacebookController instance;

    void Awake ()
    {
        instance = this;
    }

    private bool isFirst = true;
    void Update () 
    {
        if (isFirst)
        {
            isFirst = false;
#if UNITY_ANDROID
            FacebookAndroid.init();
#endif
        }
    }

    public void Login()
    {
#if UNITY_ANDROID
        var permissions = new string[] { "publish_actions", "publish_stream" };


FacebookAndroid.setSessionLoginBehavior(FacebookSessionLoginBehavior.SUPPRESS_SSO);
        FacebookAndroid.loginWithPublishPermissions(permissions);

#endif
    }

    public void Logoff()
    {
#if UNITY_ANDROID
        FacebookAndroid.logout();
#endif
    }

    public bool IsLogged()
    {
#if UNITY_ANDROID
        FacebookAndroid.isSessionValid();
#endif
        return false;
    }

    public void Share(string name, string message)
    {
#if UNITY_ANDROID
        if (FacebookAndroid.isSessionValid())
        {
            var parameters = new Dictionary<string, object>
            {
                { "link", "http://prime31.com" },
                { "name", name },
                { "picture", "http://prime31.com/assets/images/prime31logo.png" },
                { "caption", message }
            };
            FacebookAndroid.showFacebookShareDialog(parameters);
        }
#endif
    }
}

0 个答案:

没有答案