После разрядки телефона во время сохранения прогресс игрока пропал целиком
void Save(SaveData data)
{
File.WriteAllText(savePath, JsonUtility.ToJson(data));
}
Сохранение вызывается при сворачивании игры. В поддержку пишут: телефон выключился, после запуска прогресс сброшен. В логе — ошибка разбора JSON: файл обрезан на середине. Как сделать запись надёжной?
- Писать во временный файл и затем подменять
- Вызывать сохранение чаще, раз в секунду
- Сжимать JSON, чтобы запись шла быстрее
- Писать сразу в PlayerPrefs и в файл
