Сохранение объекта Parcelable в Android

У меня есть класс в приложении для Android, который я создал Parcelable, чтобы его можно было передавать между действиями.

Я хотел бы сохранить этот объект в файловой системе. Похоже, что, поскольку я уже реализовал Parcelable, было бы целесообразно передать вывод этого файла в файловую систему и прочитать его позже.

Есть ли правильный способ сделать это? Или я должен реализовать как Parcelable, так и Serialiazble, если я хочу, чтобы оба передавали объект между действиями, а также сохраняли его в файловой системе?

С http://developer.android.com/reference/android/os/Parcel.html

Посылка не является механизмом сериализации общего назначения. Этот класс (и соответствующий Parcelable API для размещения произвольных объектов в Parcel) разработан как высокопроизводительный транспорт IPC. Таким образом, нецелесообразно помещать данные посылок в постоянное хранилище: изменения в базовой реализации любой из данных в Посылке могут привести к невозможности чтения старых данных.

Для этой проблемы я сделал следующее:

  1. Реализовано Serializable в моем объекте
  2. Добавлен метод toJSON () для преобразования объекта в объект JSON
  3. Используется пользовательский JSONSerializer для записи объектов JSON в файл
  4. Добавлен конструктор, который принимает объект JSON как параметр, используемый пользовательским JSONSerializer

Это оказалось довольно простым … Я могу вставить некоторый пример кода, если это необходимо.

Intereting Posts
Использование Google Карты в Android Как преобразовать изображение в массив байтов и массив байтов в base64 String в android? CheckBox в RecyclerView продолжает проверять разные элементы Загрузить preferences.xml без расширения PreferenceActivity Как использовать ejabberd в android? Как узнать, какой фрагмент выбран в настоящее время в ViewPager? Значение по умолчанию для параметра ListPreference не отображается Android: SwipeListView – не отвечает на салфетки, но работает над кликом. OnPostExecute не вызывается в AsyncTask (исключение выполнения обработчика Handler) Существуют ли библиотеки изображений изображений (например, lomo) для Android или iPhone? Включить технологии виртуализации Intel Как я могу обнаружить любую версию в своем приложении? Мне нужен прогресс, а не диалог прогресса ConnectivityManager.CONNECTIVITY_ACTION устарел Несколько удаленных экземпляров веб-просмотра, которые видны в устройствах Chrome при открытии и закрытии приложения android cordova