为什么不能将.aidl放入库项目中?

Bil*_*Ape 6 android aidl library-project

我发现这个答案的评论说明了一个图书馆项目:

  1. 无法保存.aidl文件,
  2. 不能依赖另一个图书馆项目,
  3. 不能持有资产

好吧,这个评论是在大约一年半前做出的,我可以非常肯定地告诉你项目#2不再是真的(2010年9月?),因为我有一个完美的工作项目,由一个图书馆项目组成取决于另一个图书馆项目.

所以,我的问题是两个:

  1. 图书馆项目是否仍然无法保存.aidl文件?
  2. 如果#1的答案是肯定的,那么这是什么原因?

顺便说一下,作为一个实验,我试图将IMarketBillingService.aidl(从应用程序内的计费样本中)放入一个库项目中(没有任何使用它的东西),并且该项目像以前一样构建和运行.因此,如果图书馆项目仍然无法包含a .aidl,那么这必须更深入......

Nik*_*kov 6

答案是不'.您可以在库项目中使用AIDL文件.我在三个不同的项目中使用这样的设置.不记得确切的时间,但他们不久前修复了这个问题(可能是他们在ADT中添加了库库支持).它以前不起作用的原因是ADT构建器无法识别AIDL文件并且没有生成必要的Java存根.

  • 是的,您可以生成JAR.但是,jar不包含任何资源,因此如果您在库项目中有布局,字符串等,则不能只在您的应用程序项目中删除jar.直接关注ADT站点以获取最新信息,文档有时已过时.https://sites.google.com/a/android.com/tools/recent/ (2认同)