为什么Intent传递对象的时候必须要将对象序列化呢?
Posted TwoFish
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了为什么Intent传递对象的时候必须要将对象序列化呢?相关的知识,希望对你有一定的参考价值。
Intent可以算是四大组件之间的胶水,比如在Activity1与Activity2之间传递对象的时候,必须要将对象序列化,
可是为什么要将对象序列化呢?
Intent在启动其他组件时,会离开当前应用程序进程,进入ActivityManagerService进程(
intent.prepareToLeaveProcess()
),这也就意味着,Intent所携带的数据要能够在不同进程间传输。
首先我们知道,android是基于Linux系统,不同进程之间的java对象是无法传输,
所以我们此处要对对象进行序列化,从而实现对象在 应用程序进程 和 ActivityManagerService进程 之间传输。
以上是关于为什么Intent传递对象的时候必须要将对象序列化呢?的主要内容,如果未能解决你的问题,请参考以下文章
android activity之间传递对象 对象为啥要序列化
Intent传递对象——Serializable和Parcelable差别
java android 序列号serializable和parcelable