У меня проект на юнити с firebase. Сначала сделал регистрацию - все прекрасно работает, инициализировал все отлично, подключить проект к консоли firebase. Абсолютно также подключил в консоли firebase database realtime, инициализировал в юнити, вроде все нормально, но какой скрипт не пишу - ничего не работает, firebase database не инициализирован. Почему это может быть? или дело в скрипте?
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using Firebase;
using Firebase.Database;
using Firebase.Extensions;
using UnityEngine.UI;
public class FirebaseDatabaseHandler : MonoBehaviour
{
public InputField TitleAdIn;
public InputField DescriptionAdIn;
private DatabaseReference databaseReference;
void Start()
{
// Инициализация Firebase
FirebaseApp.CheckAndFixDependenciesAsync().ContinueWithOnMainThread(task =>
{
if (task.IsCompleted)
{
databaseReference = FirebaseDatabase.DefaultInstance.RootReference;
Debug.Log("Firebase initialized successfully.");
}
else
{
Debug.LogError("Firebase initialization failed.");
}
});
}
public void SaveData()
{
if (TitleAdIn == null || DescriptionAdIn == null)
{
Debug.LogError("InputFields are not assigned.");
return;
}
if (databaseReference == null)
{
Debug.LogError("Database reference is null. Firebase might not be initialized.");
return;
}
StartCoroutine(SaveDataCoroutine());
}
private IEnumerator SaveDataCoroutine()
{
string title = TitleAdIn.text;
string description = DescriptionAdIn.text;
// Проверка на пустые значения
if (string.IsNullOrEmpty(title) || string.IsNullOrEmpty(description))
{
Debug.LogError("Title or Description is empty.");
yield break;
}
// Создаем объект данных для сохранения
var data = new
{
title = title,
description = description
};
// Путь к вашему объекту в Firebase
string path = "ads/" + title; // Например, используем название как ключ
// Сохраняем данные в Firebase
var setTask = databaseReference.Child(path).SetRawJsonValueAsync(JsonUtility.ToJson(data));
// Ждем завершения операции
yield return new WaitUntil(() => setTask.IsCompleted);
if (setTask.Exception != null)
{
Debug.LogError("Error saving data to Firebase: " + setTask.Exception);
}
else
{
Debug.Log("Data saved successfully!");
}
}
}
Ошибка выявляется на моменте условия что databaseReference == null