android数据传输之Bundle和Parcel

1.区别(intent可以使用这两种方式传递数据给activity)

Bundle用于基本数据传输

parcelable用于序列化自定义的对象,进行传输。特别注意:它写入数据的顺序必须与读出的数据的顺序一致。

2.好处

博客地址:http://zhouhongyu1989.blog.51cto.com/2931598/1407257

时间: 2024-10-03 00:16:48

android数据传输之Bundle和Parcel的相关文章

Android之使用Bundle进行IPC

一.Bundle进行IPC介绍 四大组件中的三大组件(Activity.Service.Receiver)都是支持在Intent中传递Bundle数据的,由于Bundle实现了Parcelable接口,所以它可以方便地在不同的进程之间传输.当然,传输的数据必须能够被序列化,比如基本类型.实现了Parcelable接口的对象.实现了Serializable接口的对象以及一些Android支持的特殊对象,具体内容可以看Bundle这个类,就可以看到所有它支持的类型.Bundle不支持的类型无法通过它

Android Binder机制分析(4) Parcel类分析

引言 在上一篇Blog中,在分析服务注册过程时,往data(Parcel对象)变量写入数据时,有这样的调用路径: BpServiceManager::addService()–>Parcel::writeStrongBinder()–>flatten_binder()–>finish_flatten_binder() 由于finish_flatten_binder()方法中涉及到的东西太多,在上一篇博客就没有展开来讲.这篇博客将详细分析数据是如何写入到data中的. 下面是Parcel类

Android 完美解决bundle实现页面跳转并保留之前数据+传值

前言:昨天碰到了一个问题,我想实现页面跳转,采用了Bundle之后,再回到原来的页面,发现数据也没有了,而且一直报错,网上查找了很多资料,发现要用一个startActivityForResult(),然而好景不长,我又想在后面的页面把后面页面的数据和前面传过来的数据都传递给中间页面的数据,这样挺起来有些复杂,我简单写了一个Demo 1.首先是3个Activity=====对应3个布局=====全部贴出来好了,一看就懂的. 对应Main3Activity <?xml version="1.0

Android 消息传递之Bundle的使用——实现object对象传输(二)

上面学习了线程通过Massage发送字符串消息,Handler接收字符串消息,这样的形式来更新ui,接下来,一起分享怎么把一个对象利用消息机制发送出去,让主线程接收来更新ui. 下面就利用一个服务Server,Handler,Activity,和一个对象类分享具体实现情况. 首先创建一个个类,什么都行.例如: 1 package dfrz.me.android.pcfileshare.bean; 2 3 import java.io.Serializable; 4 5 /** 6 * 描述:广告

Android 消息传递之Bundle的使用——实现object对象传输(一)

UI更新--消息处理massage 对于安卓内部消息得处理,实现对界面UI得更新操作,不能在线程中直接更新ui.至于为什么不能,在学习安卓开发的时候,在线程中操作会使程序崩溃. 为什么,可以看看诸多大神们的详细介绍. 安卓内部处理数据更新UI都是耗时的操作,这些耗时操作系统不允许在Activity主线程中进行,必须在其他线程中操作,然后通过发消息的形式通知主线程更新UI,那么我们就要用多线程处理了,massage 消息处理机制. 下面我们一起分享郭霖Android多线程中消息处理更新UI的介绍.

android传递数据bundle封装传递map对象

android开发默认情况下,通过Bundle bundle=new Bundle();传递值是不能直接传递map对象的,解决办法: 第一步:封装自己的map,实现序列化即可 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 /**  * 序列化map供Bundle传递map使用  * Created  on 13-12-9.  */ public class SerializableMap implements Serializable {     privat

Android Studio+ADT Bundle + SDK only

配置android开发环境,有以下几种方式: 一.Android Studio:android自己开发的集IDE.SDK于一体的,集成开发环境,装了就能建项目.目前还属于beta版. 二.ADT Bundle:也是集eclipse和adt和sdk和模拟器等等于一体 Eclipse + ADT plugin Android SDK Tools Android Platform-tools A version of the Android platform A version of the Andr

Android学习笔记——Bundle

该工程的功能是实现不同线程之间数据的传递 以下代码是MainActivity.java中的代码 package com.example.bundle; import android.app.Activity; import android.os.Bundle; import android.os.Handler; import android.os.HandlerThread; import android.os.Looper; import android.os.Message; import

android开发之Bundle使用

android开发中,我们经常需要在两个activity之间传递数据,最常用的莫过于使用intent.putXXX(),可是很多时候我们也会这样: Bundle bundle = new Bundle(); bundle.putXXX()... 这两种传值方式很像,今天查看intent.putXXX()方法源代码,发现是这样的: /** * Add extended data to the intent. The name must include a package * prefix, for