我有一个适用于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,也不会超出任何范围。
我做错了什么还是错过了其他修复程序?