У меня есть Сервис, который общается через AIDL.Я успешно создал интерфейс обратного вызова и использую класс, реализующий Parcelable.
Я хочу, чтобы Parcelable содержал ссылку на интерфейс, определенный в файле AIDL, но я получаю сообщение об ошибке, что мой класс обратного вызова не можетбыть преобразованным в Parcelable.«несовместимые типы: ICallback не может быть преобразован в Parcelable»
Мой Parcelable выглядит следующим образом
class Foo implements Parcelable {
String someString;
ICallback callback;
....
@Override
public void writeToParcel(Parcel dest, int flags) {
dest.writeString(someString);
dest.writeParcelable(callback, flags); //doesn't work
}
}
AIDL для службы имеет метод, подобный следующему:
void register(Foo[] someFoos);