2012-05-03 8 views
2

Я вижу, что посылка и сериализуемое использование используются как взаимозаменяемые или, по крайней мере, неинтуитивно в одном контексте. Можете ли вы прояснить некоторые вещи для меня?Android-пакет, хранящийся в памяти или на диске? Как хранить на диске

  1. настойчивы хранения парцелла (на диске) или сохраненное в памяти только

  2. мне нужно сериализации для хранения данных посылок на диск

спасибо за понимание, и нет, руководство для android dev для меня это не делает

ответ

3

Мои ответы:

  1. Посылки предназначены для выравнивания объектов, чтобы их можно было хранить где-то, кроме рабочей памяти JVM.

  2. Вам не нужно смешивать сериализуемые с посылки для хранения данных на диск. Одного или другого достаточно для хранения объектов на диске.


Сериализуемые и Parcelable оба способ сплющивающегося ваших Java-объекты.

Эти сплющенные объекты могут передаваться между процессами через различные форматы передачи - файлы дисков включены.

Serializable поставляется с базовой Java и прост в использовании.

Parcelable поставляется с Android и немного сложнее.

Этот ответ включает в себя более подробную информацию:

https://stackoverflow.com/a/5551155/523135

Этот блог имеет образец кода Parcelable:

http://blog.cluepusher.dk/2009/10/28/writing-parcelable-classes-for-android/

Этот блог имеет образец Serializable код:

http://www.javapractices.com/topic/TopicAction.do?Id=45

0

Прочитайте документацию по участку. Посылка не должна помещаться в постоянное хранилище.

Выдержка:

»... Посылка не является универсальным механизмом сериализации Этот класс (и соответствующий Parcelable API для размещения произвольных объектов в посылку) выполнен в виде IPC транспорта высокой производительностью.. .. "

« ... нецелесообразно помещать данные посылок в постоянное хранилище: изменения в базовой реализации любой из данных в Посылке могут отображать старые данные нечитабельно ».

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