android 序列化对象 Parcelable


1、概述

平时的序列化对象大家一般都直接用java的Serializable 的形式,简单方便写的快

android 也有出自己的一套Parcelable 写起来比较复杂,但是有些地方又必须要用到,比如aidl传递对象的时候

在此小结下



2、Parcelable 操作,其实也简单,就2步

1、写入序列化 重写public WsUserInfoAM(Parcel src) {

2、读出序列化 实现该对象中的两个构造对象,和构造对象组的方法

public static final Parcelable.Creator<TT> CREATOR = new Creator<TT>() {

3、描述方法可以忽略public int describeContents() {

4、写入时的顺序和读出的顺序要一致


3、example

package com.wstv.pay.aidl;

import android.os.Parcel;
import android.os.Parcelable;

public class Info implements Parcelable{
	private String uid;
	private String tokrnId;
	private String ext;
	
	

	public String getExt() {
		return ext;
	}

	public void setExt(String ext) {
		this.ext = ext;
	}

	public String getUid() {
		return uid;
	}

	public void setUid(String uid) {
		this.uid = uid;
	}

	public String getTokrnId() {
		return tokrnId;
	}

	public void setTokrnId(String tokrnId) {
		this.tokrnId = tokrnId;
	}
	
	public Info(){
		
	}
	

	public Info(Parcel src) {
		// TODO Auto-generated constructor stub
		uid = src.readString();
		tokrnId = src.readString();
	}
	
	//0就可以
	@Override
	public int describeContents() {
		// TODO Auto-generated method stub
		return 0;
	}

	//写入序列化
	@Override
	public void writeToParcel(Parcel dest, int flags) {
		// TODO Auto-generated method stub
		dest.writeString(uid);
		dest.writeString(tokrnId);
		
	}
	
	//读出序列化
	public static final Parcelable.Creator
  
  
   
    CREATOR = new Creator
   
   
    
    () {

		
		@Override
		public Info createFromParcel(Parcel source) {
			// TODO Auto-generated method stub
			return new Info(source);
		}

		@Override
		public Info[] newArray(int size) {
			// TODO Auto-generated method stub
			return new Info[size];
		}
	};



	@Override
	public String toString() {
		return "WsUserInfo [uid=" + uid + ", tokrnId=" + tokrnId + ", ext=" + ext + "]";
	}

	
}

   
   
  
  

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值