aidl отсутствует android studio
Environment:
Mac OS 10.10.3
Android studio:1.2.11
grandle:2.2.1
Журнал:
Information:Gradle tasks [:generateDebugSources, :generateDebugTestSources]
:preBuild
:preDebugBuild
:checkDebugManifest
:prepareDebugDependencies
:compileDebugAidl FAILED
Error:Execution failed for task ':compileDebugAidl'.
> aidl is missing
// Top-level build file where you can add configuration options common to all sub-projects/modules.
import org.gradle.internal.os.OperatingSystem
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:1.0.0'
}
}
allprojects {
repositories {
jcenter()
}
}
String SDK_DIR = System.getenv("ANDROID_HOME")
if(SDK_DIR == null) {
Properties props = new Properties()
props.load(new FileInputStream(project.rootProject.file("local.properties")))
SDK_DIR = props.get('sdk.dir');
}
apply plugin: 'com.android.application'
android {
compileSdkVersion 21
buildToolsVersion "21.1.1"
sourceSets {
main {
manifest.srcFile 'AndroidManifest.xml'
java.srcDirs = ['src']
resources.srcDirs = ['src']
aidl.srcDirs = ['src']
renderscript.srcDirs = ['src']
res.srcDirs = ['res']
assets.srcDirs = ['assets']
jniLibs.srcDirs = ['libs']
}
// Move the tests to tests/java, tests/res, etc...
instrumentTest.setRoot('tests')
// Move the build types to build-types/<type>
// For instance, build-types/debug/java, build-types/debug/AndroidManifest.xml, ...
// This moves them out of them default location under src/<type>/... which would
// conflict with src/ being used by the main source set.
// Adding new build types or product flavors should be accompanied
// by a similar customization.
debug.setRoot('build-types/debug')
release.setRoot('build-types/release')
}
defaultConfig {
minSdkVersion 14
targetSdkVersion 21
}
buildTypes {
release {
proguardFiles 'proguard.cfg'
}
}
lintOptions {
checkReleaseBuilds false
// Or, if you prefer, you can continue to check for errors in release builds,
// but continue the build even when errors are found:
abortOnError false
}
}
dependencies {
compile fileTree(include: '*.jar', dir: 'libs')
provided files("${SDK_DIR}/platforms/android-17/data/layoutlib.jar")
//compile files('libs/pass-v1.1.3.jar')
// compile files('libs/sdk-v1.0.0.jar')
}
До этого я скомпилировал Android resource 4.4 на моем Mac и изменил некоторые файлы в системе OS, я думаю, что причина в том, что, но я забыл, какой файл, кто-то столкнулся с этой проблемой еще
7 ответов:
В моем случае я скачал версию 22 Android M и Android 5.1.1 с помощью Android Studio 1.2.1.1, но когда я пытаюсь сделать Hello World, эта же ошибка показала мне
Таким образом, решение было перейти, чтобы сделать правый клик в приложении, как на картинке ниже, и выбрать "Открыть Настройки модуля".....
Тогда у вас есть 2 варианта. Я изменил оба с последней версией, которая у меня была.
Скомпилировать версию SDK в API 21 Lollipop
И построить версию инструментов для 21.1.2
Наконец очистить проект и построить
Обновление Вот моя сборка.gradle Для сравнения с вашей сборкой .грэдл .
apply plugin: 'com.android.application' android { compileSdkVersion 21 buildToolsVersion '21.1.2' defaultConfig { applicationId "com.android.bmi" minSdkVersion 15 targetSdkVersion 22 versionCode 1 versionName "1.0" } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } } dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) compile 'com.android.support:appcompat-v7:22.2.0' }
Обновлено
Чтобы получить Android Studio 1.3 выполните следующие действия
- откройте окно настройки, выбрав Файл > Настройки.
- выберите Панель внешний вид и поведение > Системные настройки > обновления.
- на панели обновления выберите опцию автоматическая проверка обновления для: Канарейка Шанель.
- на панели обновления выберите Проверить сейчас, чтобы проверить наличие последней сборки canary. 5. Загрузите и установите сборку, когда вам будет предложено.
Тогда у вас будет что-то вроде этого, чтобы обновить Android Studio до 1.3, и с этим Вы можете протестировать Android M
Я решаю свою проблему, устанавливаю версию build tools с 21.1.2 до 22.0.1, надеюсь, что это может помочь тем, кто встречается с тем же.
Для тех, кто все еще получает ошибку "AIDL отсутствует":
Для меня, установка версии build tools не является решением вообще.
На вашем верхнем уровне сборки.gradle file, попробуйте установить:
classpath 'com.android.tools.build:gradle:1.3.0'
classpath 'com.google.gms:google-services:1.3.1'
, а затем использовать
buildToolsVersion '23.0.1'
.Для меня это сработало идеально. Надеюсь, это поможет другим.
После снимков экрана из сообщения Хорхе все, что вам нужно сделать, это убедиться, что вы Не выбираете Build Tools Version 23.0.0 rc1. Я не полностью исследовал эту версию в IDE или на Google bug tracker, но все, что мне нужно было сделать, это выбрать предыдущую версию инструмента, и она работала просто отлично после выполнения чистой сборки. Я попробовал это с различными версиями SDK min.
Я использую OSX 10.10.3 с Android Studio 1.2.1.1, работающей на Oracle JDK 1.8.0_45-b14
ОБНОВЛЕНО РЕШЕНИЕМ Эта проблема идентична по своей природе ошибка выполнения задачи': app:compileDebugAidl': AIDL отсутствует . Пожалуйста, прочитайте мой пост для правильного решения и ссылки на генезис решения.
Люди, которые создают приложения с Android studio 1.3 preview, могут получить ошибку Debug AIDL missing Решение: (следуйте в последовательности) 1) Загрузите все инструменты под каналом предварительного просмотра (т. е. редакция № 23.0.0 rc1) 2) скачать игры сервисы и Android поддержки репозитория поддержка дополнительная информация 3) Перезагрузите Android Studio 4)Нажмите клавишу F4 и установить скомпилировать версию SDK для API-интерфейс 22+ и строить версии 23.0.0 ник1 5) открытая сборка.gradle (Project:******) и измените строку classpath на classpath - ком.андроид.инструменты.сборка: gradle: 1.3.+'
Я следил за скриншотами из поста Хорхе. Но не имел API 21 в качестве опции. Поэтому я сохранил скомпилированную версию SDK " API 22: Android 5.1 (Lollipop)", как она есть, и изменил версию инструмента сборки с 23.0.0 rc1 на 22.0.1
Мне также пришлось установить JDK 7, так как 22.0.1 не поддерживал JDK 6. После этого грэдл билд сменился.
По моему опыту, речь идет не о Compile Sdk Version или Build Tool Version, а о новой структуре проекта. Согласно этому вопросу , файлы Aidl должны быть в src / main / aidl , как только вы поставите *.aidl в предполагаемом каталоге, Android Studio будет служить ему, как и ожидалось.
И Если вы хотите иметь их в src / main / java, то вам нужна инструкция переназначения, как вы указали , как показано ниже :
sourceSets { main { aidl.srcDirs = ['src/main/java'] } }
Кстати, в моей ситуации подход к переназначению работает только на Gradle 2.4(также, вероятно, выше версии).