我的.aidl文件中有这个方法:
void getObjects(out List<MyObject> objList);
但是我收到了这个错误
src / com / mycompany / mypackage / ITestService.aidl:26参数objList(1)未知类型列表objList
如何在.aidl中创建MyObject列表?
谢谢。
答案 0 :(得分:3)
步骤:
MyObject实现了Parcable
在src.com.mycompany.mypackage中创建新的MyObject.aidl文件
package src.com.mycompany.mypackage;
parcelable MyObject;
原因:您在进程之间传递类对象,客户端进程必须理解 被传递物体的定义。
即使AIDL编译器实现了Parcelable接口,它也无法找到我们自定义的MyObject。为了通知我们对AIDL编译器的实现,我们需要定义一个将类声明为Parcelable的aidl文件
在ITestService.aidl中添加导入语句
import src.com.mycompany.mypackage.MyObject
错误未知类型列表将被删除。
答案 1 :(得分:0)
您需要创建MyObject Parcelable,然后在AIDL文件中导入MyObject。
有关详细信息和示例,请参阅开发人员指南:https://developer.android.com/guide/developing/tools/aidl.html#PassingObjects