Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/firebase/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Unity访问Firebase数据库导致编辑器崩溃_Firebase_Unity3d - Fatal编程技术网

Unity访问Firebase数据库导致编辑器崩溃

Unity访问Firebase数据库导致编辑器崩溃,firebase,unity3d,Firebase,Unity3d,我根据此视频设置了我与Firebase的Unity项目: 现在一切都很好,我也可以在分析仪表板中看到我的活动,因此我相当有信心我的环境设置正常 当我试图访问我的数据库时,这一切似乎都崩溃了。我会按播放按钮,然后整个编辑器就会崩溃。我不知道发生了什么事!以下从数据库读取的简单示例总是导致崩溃。以下是我目前尝试访问它的方式: using System.Collections; using System.Collections.Generic; using System.Threading.Task

我根据此视频设置了我与Firebase的Unity项目:

现在一切都很好,我也可以在分析仪表板中看到我的活动,因此我相当有信心我的环境设置正常

当我试图访问我的数据库时,这一切似乎都崩溃了。我会按播放按钮,然后整个编辑器就会崩溃。我不知道发生了什么事!以下从数据库读取的简单示例总是导致崩溃。以下是我目前尝试访问它的方式:

using System.Collections;
using System.Collections.Generic;
using System.Threading.Tasks;
using UnityEngine;
using UnityEngine.Events;
using Firebase;
using Firebase.Database;
using Firebase.Unity.Editor;
using Firebase.Analytics;
using Firebase.Extensions;

public class FirebaseUtils : MonoBehaviour
{
    private FirebaseDatabase _database;
    public UnityEvent OnFirebaseInitialized = new UnityEvent();

    private void Start() {
        FirebaseApp.CheckAndFixDependenciesAsync().ContinueWithOnMainThread(task => {
            Debug.Log("Firebase init");
            if (task.Exception != null) {
                Debug.LogError($"Failed to initialize Firebase with {task.Exception}");
                return;
            }
            OnFirebaseInitialized.Invoke();
        });
    }

    public void FirebaseReady() {
        Debug.Log("Firebase is ready");
        FirebaseApp.DefaultInstance.SetEditorDatabaseUrl("https://myproject.firebaseio.com/");
        DatabaseReference reference = FirebaseDatabase.DefaultInstance.RootReference; // CRASHES HERE
    }
}
我设法在编辑器关闭之前截取了控制台的屏幕截图。


拜托,到底发生了什么事?

我想我在这里找到了解决办法:

因此,进入您的播放器设置并查找您的软件包名称。必须在AppData中创建具有相同包名的文件夹。例如,如果我的包名是
com.GreenCell.firebase
,那么我需要创建这个文件夹:
C:\Users[yourrusername]\AppData\Local\com.GreenCell.firebase

如果缺少此文件夹,它将在运行时直接使编辑器崩溃。很蹩脚,但我希望它能让人省去同样的头痛