Как использовать Resultreceiver в AIDL
Вопрос
Я хотел бы объявить асинхронный сервисный API в AIDL, используя Resultreceiver вместо создания моего собственного интерфейса обратного вызова.
Но когда я пытаюсь импортировать Android.os.ResulTreceiver, он не знает, что Результрис -Айвель может посыпать. Есть хитрость?
Пример:
import android.os.ResultReceiver;
interface IPrimeService {
int computePrimes(in int number, in ResultReceiver resultReceiver);
}
Приводит к (Android 2.2):
IPrimeService.aidl:3: couldn't find import for class android.os.ResultReceiver
Похоже, если я создаю resultreceiver.aidl в SRC/Android/OS в моем проекте, например:
package android.os;
parcelable ResultReceiver;
Это работает, но это похоже на такой взлом. Есть ли способ лучше?
Спасибо, Эрик
Решение
Я столкнулся с аналогичной проблемой .. Я отредактировал/pplatform/android-<#>/framework.aidl, чтобы включить строку
Parcable Android.os.ResulTreceiver;
И тогда это работает
Кредит: http://amdroid.ampache.org/?p=38
Не связан с StackOverflow