Firebase SDK - AppWillapps/KnowledgeBase GitHub Wiki
Интегрируйте Firebase согласно инструкции:
Шаг 1. Создайте проект Firebase
⚠️ Включите Google Analytics для проекта
Шаг 2. Зарегистрируйте приложение в Firebase
⚠️ Для шага 2 нужен Bundle Id. Найти его можно в Player Settings в Unity.
Шаг 3. Добавьте файлы конфигурации Firebase
⚠️ Файл можно добавить в любое место в папке Assets
Шаг 4. Установите Firebase SDK, а именно FirebaseAnalytics.unitypackage
Шаг 5. Откройте вкладку сверху Assets -> External Dependency Manager -> Android Resolver и нажмите на кнопку Resolve
Скрипт и методы вызова аналитики
Создайте пустой Game Object на сцене, назовите его “FirebaseManager”.
Создайте новый скрипт “FirebaseManager”.
Вы можете использовать следующий пример скрипта:
В данном скрипте есть метод DontDestroyOnLoad, поэтому достаточно будет расположить его в меню и при загрузке других сцен объект “FirebaseManager” не будет разрушаться.
using Firebase.Analytics;
using Firebase.Extensions;
using UnityEngine;
namespace GameDevClub.FirebaseTutorial
{
public class FirebaseManager : MonoBehaviour
{
public static FirebaseManager Instance;
private void Awake()
{
Firebase.FirebaseApp.CheckAndFixDependenciesAsync().ContinueWithOnMainThread(task \=\>
{
var dependencyStatus \= task.Result;
if (dependencyStatus \== Firebase.DependencyStatus.Available)
{
if (Instance \!= null)
{
Destroy(gameObject);
return;
}
else
{
Instance \= this;
}
Debug.Log("Firebase working\! Yay\!");
DontDestroyOnLoad(gameObject);
}
else
{
Debug.Log("Firebase not working\! :(");
Destroy(gameObject);
}
});
}
public void ReportGoal(string name, Parameter\[\] parameters)
{
FirebaseAnalytics.LogEvent(name, parameters);
}
}
}
Данное решение представлено для ознакомления вы можете использовать свой код или менять этот скрипт в соответствие с вашими ожиданиями
Теперь вы можете вызывать методы для отправки аналитики из скрипта представленного выше, достаточно обратиться к классу FirebaseManager и выбрать нужный вам метод, например так:
using Firebase.Analytics;
using UnityEngine;
namespace GameDevClub.FirebaseTutorial
{
public class FirebaseSender : MonoBehaviour
{
\[SerializeField\] private string \_goalName;
\[SerializeField\] private string \_parameterName;
\[SerializeField\] private string \_parameterValue;
private void Start()
{
ReportGoalExample();
}
private void ReportGoalExample()
{
Parameter\[\] parameters \={
new Parameter(\_parameterName, \_parameterValue )
};
FirebaseManager.Instance.ReportGoal(\_goalName, parameters);
}
}
}
✅ Готово, вы интегрировали аналитику Firebase в ваш проект.