Передача объекта очереди через IPC в Android

1

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

Я хочу передать объект класса X в интерфейс AIDL. Когда я импортирую класс X в файл.aidl 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, но он не работал. может ли кто-нибудь что-нибудь предложить?

Благодарю.

Теги:
aidl
ipc

1 ответ

1
Лучший ответ

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

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

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

Ещё вопросы

Сообщество Overcoder
Наверх
Меню