我想使用ResultReceiver在AIDL中声明一个异步服务API,而不是创建我自己的回调接口。
但是当我尝试导入android.os.ResultReceiver时,它不知道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
似乎我在我的项目中的src / android / os中创建了ResultReceiver.aidl,如:
package android.os;
parcelable ResultReceiver;
它有效,但这看起来像是一个黑客。还有更好的方法吗?
谢谢,Eric
答案 0 :(得分:2)
我遇到了类似的问题..我编辑了/platform/android-<#>/framework.aidl以包含该行
parceable android.os.ResultReceiver;
然后它起作用