【android】AIDL传递自定义类型参数
2017-01-05 17:03
615 查看
Aidl默认支持的类型包话java基本类型(int、long、boolean等)和(String、List、Map、CharSequence),如果要传递自定义类型,首先要让自定义类型支持parcelable协议,实现步骤如下:
1>自定义类型必须实现Parcelable接口,并且实现Parcelable接口的public void writeToParcel(Parcel dest, int flags)方法 。
2>自定义类型中必须含有一个名称为CREATOR的静态成员,该成员对象要求实现Parcelable.Creator接口及其方法。
3> 创建一个aidl文件声明你的自定义类型。
Parcelable接口的作用:实现了Parcelable接口的实例可以将自身的状态信息(状态信息通常指的是各成员变量的值)写入Parcel,也可以从Parcel中恢复其状态。 Parcel用来完成数据的序列化传递。
首先,自定义一个类
[java] view
plain copy
public interface Callback extends Parcelable {
/*
* 返回信息
*/
public void SetMessage(String res);
public static final Parcelable.Creator<Callback> CREATOR = new Parcelable.Creator<Callback>() {
@Override
public Callback[] newArray(int size) {
return new Callback[size];
}
@Override
public Callback createFromParcel(Parcel source) {
// TODO Auto-generated method stub
return null;
}
};
}
其次,在自定义类型所在包下创建一个aidl文件对自定义类型进行声明,文件的名称与自定义类型同名。
package com.***;
parcelable Callback;
再次,在要接口的aidl中注明
void getMessage(String mum,inCallback obj);
1>自定义类型必须实现Parcelable接口,并且实现Parcelable接口的public void writeToParcel(Parcel dest, int flags)方法 。
2>自定义类型中必须含有一个名称为CREATOR的静态成员,该成员对象要求实现Parcelable.Creator接口及其方法。
3> 创建一个aidl文件声明你的自定义类型。
Parcelable接口的作用:实现了Parcelable接口的实例可以将自身的状态信息(状态信息通常指的是各成员变量的值)写入Parcel,也可以从Parcel中恢复其状态。 Parcel用来完成数据的序列化传递。
首先,自定义一个类
[java] view
plain copy
public interface Callback extends Parcelable {
/*
* 返回信息
*/
public void SetMessage(String res);
public static final Parcelable.Creator<Callback> CREATOR = new Parcelable.Creator<Callback>() {
@Override
public Callback[] newArray(int size) {
return new Callback[size];
}
@Override
public Callback createFromParcel(Parcel source) {
// TODO Auto-generated method stub
return null;
}
};
}
其次,在自定义类型所在包下创建一个aidl文件对自定义类型进行声明,文件的名称与自定义类型同名。
package com.***;
parcelable Callback;
再次,在要接口的aidl中注明
void getMessage(String mum,inCallback obj);
相关文章推荐
- [Android Pro] AIDL进程间传递自定义类型参数
- 【android】AIDL传递自定义类型参数
- [Android Pro] AIDL进程间传递自定义类型参数
- 【android】AIDL传递自定义类型参数
- [Android Pro] AIDL进程间传递自定义类型参数
- android aidl 自定义类型 作参数
- Android之进程间传递自定义类型参数
- AIDL进程间传递自定义类型参数
- android aidl 自定义类型 作参数
- android aidl 自定义类型 作参数
- Android学习笔记_23_服务Service之AIDL和远程服务实现进程通信以及进程间传递自定义类型参数
- AIDL进程间传递自定义类型参数
- Android进程间传递自定义类型参数实现Parcelable接口
- android aidl 自定义类型 作参数
- 【Android】使用AIDL传递用户自定义类型数据--附完整示例代码
- Android学习笔记_23_服务Service之AIDL和远程服务实现进程通信以及进程间传递自定义类型参数
- 谈VB自定义类型参数的传递
- \t\t在MSSQL中定义和使用C#自定义类型 SQL Server08表类型参数传递
- Android开发 AIDL使用自定义对象作参数或返回值
- Android开发:使用序列化接口Parcelable、Serializable实现Activity间传递复杂数据类型参数