Android Studio无法检测到.aidl文件。

20

我在互联网上找到了一个示例 (https://github.com/manishkpr/Android-AIDL-Example),并在Android Studio上运行成功了。

但是现在当我试图重新创建该项目时,无论我把.aidl文件放在哪里,Android Studio都无法识别它。 有谁能告诉我在Android Studio中放置.aidl文件的正确位置是什么?

p.s. 我已经将以下代码添加到build.gradle,并将.aidl文件放置在java目录中,但未能使其工作。

sourceSets {
main {
    aidl.srcDirs = ['src/main/java']
}
7个回答

16
在我的情况下,CleanRebuild 项目解决了我的问题。希望这有帮助。

16

6

这个链接对我很有帮助,因为在构建过程中我没有看到 gen 文件夹显示 aidl 的生成。链接中提到它也可以出现在 build/generated/source/aidl 目录下(他们的路径写得不同,但结果相同)。 - Eric Engel
似乎Gradle 4.1不再适用此方法。在4.1之前的build.gradle中,我甚至没有sourceSets声明。我还需要提供manifest、source和res的路径,因为更新后它什么都找不到了。我完全相信他们只是讨厌应用程序开发者。 - FrankKrumnow

3
将以下内容添加到您的 build.gradle.kts 文件中:
android {
    ...
    buildFeatures.aidl = true
    ...
}

2

需要生成AIDL文件,因此有时当您需要声明位于AIDL文件中的类时,您首先需要构建这些AIDL文件,然后Android Studio才能解析其内容。


0
在新的Android Studio Giraffe中,可以通过以下方式找到解决方案:
1. 首先,在build.gradle中添加以下内容: buildFeatures { aidl true }
2. 右键点击app > New > Aidl > Aidl file 现在添加aidl文件名,并输入aidl文件夹,与当前包名下给定名称的.aidl文件一起创建。

0

运行

./gradlew assembleDebug

或者

gradle assemble

你也可以在Gradle的build任务下运行(assemble) -> build -> assemble


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接