Skip to content
阅读进度

除了 Bundle,还有哪些方式可以在 Activity 之间安全地传递复杂对象? ​

返回 Android 核心 目录

标准回答 ​

跨页面尽量传“去哪里取数据”的线索,别搬整个大对象。

  • 小对象可用 Parcelable/Serializable 放入 Intent extras。
  • 大图、大列表、文件传 URI、文件描述符或数据库主键。
  • 同进程共享仓库要考虑进程重建后内存数据消失。

通俗例子 ​

从相册列表打开详情,Intent 传照片 URI 或数据库 ID;详情再读取图片。直接塞一张大 Bitmap 容易让跨进程传输超限。

易混淆点 ​

静态变量不是可靠的跨进程或状态恢复通道;Binder 也不适合搬运大对象。

参考资料 ​

内容来源 ​

用完整回答理解机制,用真实证据解释项目。