나는 parcel과 serializable이 같은 문맥에서 상호 교환 적으로 또는 적어도 직관적으로 사용되는 것을 본다. 나에게 필요한 것을 분명히 해줄 수 있니?메모리 또는 디스크에 저장된 Android 소포? 디스크에 저장하는 방법
은 소포의 영구 저장소입니다 (디스크) 또는
내가
나는 parcel과 serializable이 같은 문맥에서 상호 교환 적으로 또는 적어도 직관적으로 사용되는 것을 본다. 나에게 필요한 것을 분명히 해줄 수 있니?메모리 또는 디스크에 저장된 Android 소포? 디스크에 저장하는 방법
은 소포의 영구 저장소입니다 (디스크) 또는
내가
내 대답 :
소포는 객체를 병합하여 JVM의 실행 메모리가 아닌 다른 곳에 저장할 수 있도록하기위한 것입니다.
데이터를 디스크에 저장하기 위해 직렬화 가능 항목을 필링과 혼합 할 필요가 없습니다. 하나 또는 다른 하나만 있으면 디스크에 객체를 저장할 수 있습니다.
직렬화 및 Parcelable
은 자바 객체를 평평하게하는 두 가지입니다.이러한 병합 된 개체는 다양한 전송 형식 (디스크 파일 포함)을 통해 프로세스간에 전달 될 수 있습니다.
Serializable은 핵심 Java에서 제공되며 사용하기 쉽습니다.
Parcelable은 Android에서 제공되며 좀 더 복잡합니다.
이 답변은 자세한 내용이 포함
https://stackoverflow.com/a/5551155/523135
이 블로그 게시물은 샘플 코드 Parcelable이 있습니다
http://www.javapractices.com/topic/TopicAction.do?Id=45
:http://blog.cluepusher.dk/2009/10/28/writing-parcelable-classes-for-android/
이 블로그 게시물은 샘플 직렬화 코드가
소포 설명서를 읽으십시오. 소포는 영구 저장 장치에 두어서는 안됩니다.
발췌 :
"
... 소포 고성능 IPC 전송으로 설계된 범용 직렬화 메커니즘이 클래스 (및 소포에 임의의 객체를 배치하는 해당 Parcelable API) 아니다.. .. ""Parcel 데이터를 영구 저장소에 저장하는 것은 적절하지 않습니다. Parcel에있는 데이터의 기본 구현을 변경하면 이전 데이터를 읽을 수 없게 될 수 있습니다. "
http://developer.android.com/reference/android/os/Parcel.html