本着重用代码的精神,我正在尝试创建一些库项目。但是,我似乎遇到了定义跨库的.aidl文件的问题。这是问题所在:
在库A中我有Foo.java和Foo.aidl。 Foo.java是Parcelable所以aidl声明是:
Foo.aidl:
package com.example.library.A;
parcelable Foo;
现在我正在尝试创建库B.在库B中,我想定义一个使用类Foo的服务接口:
IMyService.aidl:
package com.example.library.B;
import com.example.library.A.Foo;
interface IMyService {
void requestSomething(in Foo fooBug);
}
此文件无法编译抱怨无法找到Foo的导入。我尝试引用库A,我尝试将库项目添加为外部jar,但都不起作用。
是否存在我不知道的限制?我的项目设置有问题吗?
我应该提一下,我已经在一个没有问题的项目中直接使用了库A,所以我确信lib A不是问题。
答案 0 :(得分:1)
我有它的工作,但我对解决方案不满意。在lib B中,我不得不添加一个com.example.library.A包并将Foo.aidl文件复制到其中。