Я пишу игру для Android. Когда пользователь завершает уровень, он может перезапуститься со следующего уровня, если он проигрывает (т.е. мне нужно сохранить целое число, чтобы запомнить, к какому уровню он попал). Если приложение прерывается во время игры, я сохраняю состояние мира на диске (это сложное состояние, в котором хранятся карта и игровые объекты).
Я бы хотел оставить в будущем свои опции для изменения кода игры и способа сохранения / сохранения состояния мира. Однако я должен рассмотреть сценарий, когда у пользователя есть старая версия состояния мира на его телефоне, потому что он был в середине игры, он обновляет приложение и теперь приложение не может загрузить состояние мира.
Необходимость написать код для переноса старой версии данных в новую версию данных будет проблемой, если есть какой-то способ, которым я могу избежать этого. Было бы неплохо, если бы я мог как-то попросить пользователя закончить текущую игру перед обновлением. Можно ли это сделать? Есть ли другие варианты?
Я не собираюсь делать это часто. Я хотел бы итеративно разрабатывать свою игру, получая некоторые ранние отзывы, но это сложно, если я должен исправить, как состояние мира сохраняется и восстанавливается сейчас.
Надеюсь, это не кажется глупым вопросом, но на ПК или консоли вполне нормально иметь игры, которые вы не можете сохранить во время игры, или вы можете сохранять только между уровнями. Я просто нахожу Android немного болезненным, так как вы должны иметь стратегию сохранения игры для всех игр.