https://blog.csdn.net/kroclin/article/details/40902721

一、前言
相信数据序列化大家都多多少少有接触到,比如自定义了一个实体类,需要在activity之间传输该类对象,就需要将数据序列化。android中实现方式有两种,第一、实现Serializable接口,这种比较简单,直接声明就好;第二种,实现Parcelable接口,这种方式就比较复杂,往往需要写多些代码去实现,不过效率就比较高,还是值得推荐这种方式。那么,现在问题来了...

因为实现比较复杂,所以遭到很多人的嫌弃,但如果现在有一种方式,可以让你几秒钟实现Parcelable接口,你是否会很兴奋呢?确实有这种方法,Intellij idea和Android Studio上面有一个插件,叫做android parcelable code generator,可以让你一键实现。这里我先展示一下效果,再说明怎样安装。

二、效果展示
1、首先建好一个测试用的person实体类:

2、然后一键生成之后如下,看看是不是你想要的,是的话就继续往下看:

package com.kroclin.myapplication;

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

/**
* Created by KrocLin on 2014/11/7.
*/
public class Person implements Parcelable {

private int age;
private String name;
private String gender;

@Override
public int describeContents() {
return 0;
}

@Override
public void writeToParcel(Parcel dest, int flags) {
dest.writeInt(this.age);
dest.writeString(this.name);
dest.writeString(this.gender);
}

public Person() {
}

private Person(Parcel in) {
this.age = in.readInt();
this.name = in.readString();
this.gender = in.readString();
}

public static final Parcelable.Creator<Person> CREATOR = new Parcelable.Creator<Person>() {
public Person createFromParcel(Parcel source) {
return new Person(source);
}

public Person[] newArray(int size) {
return new Person[size];
}
};
}

三、如何装上插件,首先你得要有Intellij idea或者Android Studio。
1、在线安装

然后打开File -> Settings -> Pugins -> Browse Repositories 如下,输入android parcelable code generator:

然后就可以安装了,安装好了之后重启下就可以用啦~~

2、离线安装,点击这里下载安装包

下载好了之后,打开File -> Settings -> Pugins -> Install plugin from disk,选择你刚刚下载到的.zip压缩包,然后OK,重启就行啦

3、使用方法:

新建好一个实体类后写好属性:

按下Alt+Insert,选择Palcelable,选择需要的属性,按下OK,搞定~~很简单有木有!

---------------------
作者:KrocLin
来源:CSDN
原文:https://blog.csdn.net/kroclin/article/details/40902721
版权声明:本文为博主原创文章,转载请附上博文链接!

Android Studio酷炫插件(一)——自动化快速实现Parcelable接口序列化的更多相关文章

  1. Android Studio自动化快速实现Parcelable接口序列化

    1.在线安装 然后打开File -> Settings -> Pugins -> Browse Repositories 如下,输入android parcelable code g ...

  2. Android常用酷炫控件(开源项目)github地址汇总

    转载一个很牛逼的控件收集帖... 第一部分 个性化控件(View) 主要介绍那些不错个性化的 View,包括 ListView.ActionBar.Menu.ViewPager.Gallery.Gri ...

  3. 【Android Studio安装部署系列】二十九、Android Studio安装本地插件(以国际化方法插件AndroidLocalizationer为例)

    版权声明:本文为HaiyuKing原创文章,转载请注明出处! 概述 实际开发中,需要用到插件,用来提高效率,这里就以生成国际化strings.xml的插件AndroidLocalizationer为例 ...

  4. Android Studio开发-高效插件强烈推荐

    Android Studio开发-高效插件强烈推荐 现在Android的开发者基本上都使用Android Studio进行开发(如果你还在使用eclipse那也行,毕竟你乐意怎么样都行).使用好And ...

  5. Android Studio最全插件整理

    在Android开发中,合理的使用Android Studio插件不但可以提高开发效率,还能从整体上提高代码的质量.下面就Android开发中常见的一些插件做一个整理. 1,GsonFormatGso ...

  6. Android Studio安装Genymotion插件

    Android Studio安装Genymotion插件 Eclipse就不介绍了,谷歌都已经放弃Eclipse了,你还在坚持什么. 安装Genymotion 官网:https://www.genym ...

  7. 49个你应该了解的Android Studio技巧、插件与资源 http://www.apkbus.com/blog-822721-72630.html (出处: 安卓巴士 - 安卓开发 - Android开发 - 安卓 - 移动互联网门户)

    49个你应该了解的Android Studio技巧.插件与资源http://www.apkbus.com/blog-822721-72630.html(出处: 安卓巴士 - 安卓开发 - Androi ...

  8. Android Studio 添加 Genymotion插件

    原文:Android Studio 添加 Genymotion插件 1.下载Genymotion:官网地址,必须先注册才能下载,下载带有VirtualBox的版本 2.安装:安装时会连VirtualB ...

  9. android studio 配置 Lombok 插件 -具体步骤

    1.前言 idea 用惯了 Lombok 插件了,好用的很,可是开发安卓 却没有,即便在 android studio 安装了插件,但是仍然无法使用 因为需要配置 2.解决 (1)进入设置,找到插件设 ...

随机推荐

  1. SyntaxError:unexpected EOF while parsing(<string,line 0>)

    在python+Django中出现报错:(上图) 经断点发现:python内置函数eval在处理空字符串时会返回EOF错误,判断后解决

  2. Java学习-050-AES256 之 java.security.InvalidKeyException: Illegal key size or default parameters 解决方法

    在进行 Java AES 加密测试时,出现如下错误信息: java.security.InvalidKeyException: Illegal key size or default paramete ...

  3. GlusterFS配置及使用

    一.GlusterFS 配置及使用 GlusterFS配置及使用:https://www.cnblogs.com/sxchengchen/p/7805667.html 二.CentOS 7 安装部署 ...

  4. Java发送邮件功能

    package com.hd.all.test.testjava; import java.util.Properties; import javax.mail.Address; import jav ...

  5. 【LeetCode每天一题】Jump Game(跳跃游戏)

    Given an array of non-negative integers, you are initially positioned at the first index of the arra ...

  6. Ocelot:API网关概要

    一.概要 Ocelot是.Net Core下一个开源API网关:Ocelot主要目标是在.NET在微服务或面向服务架构中提供统一的入口服务, Ocelot拿到HttpRequest对象到管道后,先创建 ...

  7. safari无法调试iphone提示“无可检查的应用程序”的解决方法

    iphone上打开safari,随便访问一个网站,mac上通过Safari的开发,我的iphone是可以看到的.如果打开APP,就提示“无可检查的应用程序”. 解决方法 使用XCode运行我们的App ...

  8. 谈谈 ArrayList 和 LinkedList 的区别

    ArrayList: 基于动态数组的数据结构:删除和插入操作每次都要改变数组的长短,比较消耗性能,但是查询会比较快 除非插入和删除的位置都在表末尾,否则代码开销会很大,因为里面需要数组的移动. Lin ...

  9. python assert断言函数

    python assert断言是声明布尔值必须为真的判定,如果发生异常就说明表达式为假. 可以理解assert断言语句为raise-if-not,用来测试表示式,其返回值为假,就会触发异常. self ...

  10. JSONModel(I)

    JSONModel使用简介 JSONModel 只需要将你的 model 类继承自 JSONModel ,而同时 model 中的属性名又恰巧可以和 JSON 数据中的 key 名字一样的话,那么非常 ...