В чем ошибка загрузки сохранений в unity3d?

Всем привет.
Может быть я рано полез в геймдев и стоило бы еще по изучать азы, но я дошел до того, что уже выложил свою игру в google play, и столкнулся с одной проблемой.
Когда я загружаю обновление игры, то происходит какой-то сбой, т.е. скачав первый раз, все хорошо, и даже можно выйти и войти заново - все отлично, при клике все работает, в магазине все работает, да и в целом все работает. Но стоит загрузить обновление, неважно, была изменена там хоть графическая часть, то все пропадает: кнопки магазина становятся с теми текстами, которые были в самом unity3d, счет так же, и ничего не работает.
Я подумал, это может быть из-за сохранений. Использую загрузку сохранений в json файл.
Загрузка сохранений
private void Awake ()
{
	string loadedData;
#if !UNITY_EDITOR && UNITY_ANDROID
	path = Path.Combine(Application.persistentDataPath, "Save.json");
#else 
	path = Path.Combine(Application.dataPath, "Save.json");
#endif
if (File.Exists (path)) {
	loadedData = File.ReadAllText (path);
}
		save = JsonUtility.FromJson<Save> (loadedData);
		globalTaps = save.globalTaps;
		taps = save.taps;
		score = save.score;
		bonus = save.bonus;
		bonusPerSec = save.bonusPerSec;
		for (int i = 0; i < shopItems.Count; i++) {
			shopItems [i].levelOfItem = save.levelOfItem [i];
		}
}
5a1467f0bc338674239489.png5a146a307f2b9772460982.pngСохранение
Сохранения у меня обновляются в Update
save.globalTaps = globalTaps;
		save.taps = taps;
		save.score = score;
		save.bonus = bonus;
		save.bonusPerSec = bonusPerSec;
		save.levelOfItem = new int[shopItems.Count];
		for (int i = 0; i < shopItems.Count; i++) {
			save.levelOfItem [i] = shopItems [i].levelOfItem;
		}

Но так же еще есть запись сохранений после выхода из игры(хотя почему-то оно все равно не работает, оставил на всякий случай)
#if !UNITY_EDITOR && UNITY_ANDROID
	private void OnApplicationPause ()
	{
		pause = true;
		File.WriteAllText (path, JsonUtility.ToJson (save));
		save.globalTaps = globalTaps;
		save.taps = taps;
		save.score = score;
		save.bonus = bonus;
		save.bonusPerSec = bonusPerSec;
		save.levelOfItem = new int[shopItems.Count];
		for (int i = 0; i < shopItems.Count; i++) {
			save.levelOfItem [i] = shopItems [i].levelOfItem;
		}	
	}
#endif

	private void OnApplicationQuit ()
	{
		pause = true;
		save.globalTaps = globalTaps;
		save.taps = taps;
		save.score = score;
		save.bonus = bonus;
		save.bonusPerSec = bonusPerSec;
		save.levelOfItem = new int[shopItems.Count];
		for (int i = 0; i < shopItems.Count; i++) {
			save.levelOfItem [i] = shopItems [i].levelOfItem;
		File.WriteAllText (path, JsonUtility.ToJson (save));
		}
	}
  • Вопрос задан
  • 508 просмотров
Решения вопроса 1
GavriKos
@GavriKos Куратор тега Разработка игр
Подключайтесь отладчиком и смотрите. 90% что где то Exception при загрузке новой версии
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы