Сериализация Пакета Android для сетевого и/или персистентного устройства хранения данных?

Я нуждаюсь к сериализации всестороннего приложения (игра) состояние, которое будет передано по сети или сохранено на диск и получено в более позднее время.

Пакеты, конечно, используются для сохранения/восстанавливания состояний в нескольких вариантах использования, так использование их было бы идеально. Однако по некоторым причинам Пакет не является сериализуемым.

Поиск решения только поднял недопустимый взлом превращения Пакета в Пакет и затем маршалинг, что, но это не приемлемое решение, потому что нет никакой гарантии, что это будет возможно в неМаршалл данные позднее или на удаленном устройстве.

Таким образом, поскольку это смотрит теперь, единственное решение, кажется, чтобы получить весь набор ключей от Пакета, получить каждый содержащий в нем объект, сделать довольно огромный переключатель/случай на каждом Объекте. Класс и вручную создает гиганта ByteBuffer или подобный от всех этих данных, наряду с размером и вводит информацию для успешного восстановления всего этого с другой стороны.

Не точно гладкий.

Кто-либо знает о лучшем пути? Возможно, кто-то уже создал служебную функцию для Пакета, который делает это?

8
задан Hnefi 4 August 2010 в 09:48
поделиться

1 ответ

Отличный вопрос! Интересно, вам нужно сериализовать весь пакет или только содержащуюся в нем информацию? Возможно, вам нужна только информация, которую вы можете сохранить в любом типе (String, List или Array). Посмотрите на подклассы java.io.Serializable, который является огромным.

1
ответ дан 6 December 2019 в 02:23
поделиться
Другие вопросы по тегам:

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