Как сохранить настройки игры?

Я занимаюсь разработкой простой игры для Android с меню и 3-мя этапами игры. В настоящее время я работаю над сохранением игрового состояния. В меню активности пользователь может изменить некоторые настройки, такие как аудио (вкл / выкл), реклама (вкл / выкл) и т. Д. Когда пользователь нажимает "новая игра", следовательно, оставляет активность в меню для игровой активности:

1) Должен ли я завершить работу с меню и перезапустить ее по назначению каждый раз, когда пользователь нажимает кнопку "Назад" в игре? Поддержание их обоих (активности меню и игровой активности) приводит к ошибке OutOfMemory.

2) Где мне сохранить настройки, измененные пользователем в меню?

Сохранение состояния игры и разработка Android для меня новость, поэтому я буду признателен за подробные ответы.

3 ответа

Решение

Ваши варианты хранения данных следующие:

  1. Общие предпочтения: Храните личные примитивные данные в парах ключ-значение.
  2. Внутреннее хранилище: хранить личные данные в памяти устройства.
  3. Внешнее хранилище: храните общедоступные данные в общем внешнем хранилище.
  4. Базы данных SQLite: храните структурированные данные в частной базе данных.
  5. Сетевое подключение: храните данные в Интернете на своем собственном сетевом сервере.

источник: developer.android.com

Google пытается подтолкнуть разработчиков игр к использованию игровых сервисов Google Play. Вы можете решить свою проблему с этим. Если вам не нужна дополнительная кривая обучения для этого, вы можете сохранить свои настройки с помощью SharedPreferences. Более подробную информацию о хранении данных можно найти здесь: хранение данных.

Я настоятельно рекомендую прочитать документацию Google для разработчиков Android. Там есть много вопросов.

Использование предпочтений.

Вот несколько полезных ссылок, которые помогут вам сделать это:

  1. настройки
  2. пакет android.preference
  3. Общие настройки
  4. Общие настройки. Редактор
  5. предпочтение
Другие вопросы по тегам