Unity Firebase не инициализируется на Android - PullRequest
0 голосов
/ 07 августа 2020

У меня есть проект Firebase Unity для Android. В настоящее время я использую 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 и протестировал его, он не изменил go на Debug.Log("var dependencyStatus = task.Result;");. Я пробовал использовать множество решений, найденных в Интернете, например использовать другую версию Unity или последнюю версию Firebase SDK или повторно импортировать Firebase, но ни одно из них не работает.

Изменить: похоже, что функция Start() заканчивается на FirebaseApp.CheckAndFixDependenciesAsync().ContinueWithOnMainThread и не будет go дальше этого, даже если после функции есть Debug.Log.

Я делаю что-то не так или есть какое-то другое исправление, которое я пропустил?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...