Передача объекта очереди через IPC в Android - PullRequest
1 голос
/ 02 декабря 2011

У меня есть класс X, который реализует очередь.

Я хочу передать объект класса X в интерфейс AIDL. Когда я импортирую класс X в .aidl File Eclipse показывает ошибку и говорит "не могу найти импорт для класс com.test.X. "хотя класс есть.

package com.test

public class X implements Queue<byte[]>{


public LinkedList<byte[]> que = new LinkedList<byte[]>();

int push =0, pop = 0;

public Iterator<byte[]> iterate = null;

public X()
{
    iterate = que.iterator();// TODO Auto-generated constructor stub
}
}

При поиске в Google я обнаружил, что Вы должны создать отдельный файл .aidl для каждого класса, который вы хотите использовать в своей службе. Итак, я создал X.aidl, но он не работал. Кто-нибудь может что-то предложить?

Спасибо.

1 Ответ

1 голос
/ 16 марта 2012

Постарайтесь, чтобы ваш класс реализовывал интерфейс Parcelable.Так что в вашем случае объявление будет выглядеть так:

public class X implements Queue<byte[]>, Parcelable {}

Вы можете прочитать здесь , как реализовать интерфейс Parcelable.

...