@H_404_1@我的.aidl文件中有以下方法:
@H_404_1@
void getObjects(out List<MyObject> objList);
@H_404_1@但是我得到这个错误
@H_404_1@src / com / mycompany / mypackage / ITestService.aidl:26参数objList(1)未知类型列表objList
@H_404_1@如何在.aidl中创建MyObject列表?
@H_404_1@谢谢.最佳答案
脚步:
@H_404_1@> MyObject实现Parcable
>在src.com.mycompany.mypackage中创建新的MyObject.aidl文件 @H_404_1@
传递对象的定义. @H_404_1@即使AIDL编译器实现了Parcelable接口,也无法找到我们自定义的MyObject.为了将实现告知AIDL编译器,我们需要定义一个aidl文件,该文件将类声明为Parcelable
>在ITestService.aidl中添加导入语句, @H_404_1@
>在src.com.mycompany.mypackage中创建新的MyObject.aidl文件 @H_404_1@
package src.com.mycompany.mypackage;
parcelable MyObject;
@H_404_1@原因:您在流程之间传递类对象,客户端流程必须了解传递对象的定义. @H_404_1@即使AIDL编译器实现了Parcelable接口,也无法找到我们自定义的MyObject.为了将实现告知AIDL编译器,我们需要定义一个aidl文件,该文件将类声明为Parcelable
>在ITestService.aidl中添加导入语句, @H_404_1@
import src.com.mycompany.mypackage.MyObject
@H_404_1@错误未知类型列表将被删除.