Unity Firebase尚未在Android上初始化

时间:2020-08-07 02:40:01

标签: android firebase unity3d

我有一个适用于Android的Firebase Unity项目。我当前正在使用Unity 2019.3.1和Firebase SDK 6.15.2。以下是我用于连接到Firebase的代码:

using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Events;
using Firebase;
using Firebase.Auth;
using Firebase.Firestore;
using Firebase.Extensions;

public class FirebaseManager : MonoBehaviour
{
    public static FirebaseManager instance;
    private FirebaseApp app;

    private async void Awake()
    {
        if (instance == null)
        {
            DontDestroyOnLoad(gameObject);
            instance = this;
            var dependencyResult = await FirebaseApp.CheckAndFixDependenciesAsync();
            if (dependencyResult == DependencyStatus.Available) app = FirebaseApp.DefaultInstance; 
            else Debug.LogError($"Failed to initialize Firebase with {dependencyResult}");
        }
    else Debug.LogWarning($"An instance of {nameof(FirebaseManager)} already exists!");
    }

    void Start()
    {
        Debug.Log("FirebaseManager.Start()");
        FirebaseApp.CheckAndFixDependenciesAsync().ContinueWithOnMainThread(task => 
        {
            var dependencyStatus = task.Result;
            Debug.Log("var dependencyStatus = task.Result;");
            if (dependencyStatus == DependencyStatus.Available) InitializeFirebase();
            else Debug.LogError("Could not resolve all Firebase dependencies: " + dependencyStatus);
        });
    }
}

Firebase在Unity上运行。但是,当我构建apk并对其进行测试时,它没有转到Debug.Log("var dependencyStatus = task.Result;");。我尝试使用在线找到的许多解决方案,例如使用其他Unity版本或最新的Firebase SDK或重新导入Firebase,但是它们都不起作用。

编辑:似乎Start()函数在FirebaseApp.CheckAndFixDependenciesAsync().ContinueWithOnMainThread处结束 并且即使在该功能后面有一个Debug.Log,也不会超出任何范围。

我做错了什么还是错过了其他修复程序?

0 个答案:

没有答案