Unity C#

OnApplicationQuit в Unity C#: действия при закрытии игры

Метод OnApplicationQuit в Unity выполняет действия перед закрытием приложения. В нём завершают процессы, сохраняют данные и корректно освобождают ресурсы.

Unity вызывает его автоматически, когда пользователь закрывает игру или останавливает её в редакторе. Но в веб-версиях метод не срабатывает — там нет чёткого события закрытия.

Особенности

  • Вызывается при закрытии: срабатывает один раз при завершении работы приложения.
  • Сохранение данных: подходит для записи прогресса, закрытия соединений и других финальных операций.
  • Не работает в веб-играх: в WebGL и браузерах не вызывается.

Пример кода

GameManager перед выходом сохраняет данные игры:

using UnityEngine;

public class GameManager : MonoBehaviour
{
    // Метод OnApplicationQuit используется для выполнения действий перед закрытием приложения
    void OnApplicationQuit()
    {
        Debug.Log("Приложение закрывается. Сохраняем данные...");
        SaveGameData();
    }

    private void SaveGameData()
    {
        // Логика сохранения данных
        Debug.Log("Данные успешно сохранены.");
    }
}