Как вернуть список MyObject в файле android aidl? - PullRequest
3 голосов
/ 23 сентября 2009

У меня есть этот метод в моем файле .aidl:

void getObjects(out List<MyObject> objList);

Но я получаю эту ошибку

src / com / mycompany / mypackage / ITestService.aidl: 26 параметр objList (1) неизвестный тип Список objList

Как создать список MyObject в .aidl?

Спасибо.

Ответы [ 2 ]

3 голосов
/ 23 ноября 2012

Шаги:

  1. MyObject реализует Parcable

  2. Создание нового файла MyObject.aidl в src.com.mycompany.mypackage

      package src.com.mycompany.mypackage;
      parcelable MyObject;
    

    Причина: вы передаете объекты класса между процессами, клиентский процесс должен понимать определение передаваемого объекта.

    Компилятор AIDL не сможет найти наш самоопределенный MyObject, даже если он реализует интерфейс Parcelable. Чтобы сообщить нашу реализацию компилятору AIDL, нам нужно определить файл aidl, который объявляет класс как Parcelable

  3. В ITestService.aidl добавить оценку импорта,

    import src.com.mycompany.mypackage.MyObject
    

Ошибка неизвестного типа Список будет удален.

0 голосов
/ 09 мая 2012

Вам нужно сделать MyObject Parcelable и затем импортировать MyObject в ваш файл AIDL.

Для получения дополнительной информации и примера см. Руководство разработчика: https://developer.android.com/guide/developing/tools/aidl.html#PassingObjects

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...