aidl a disparu d'android studio

Environment:
Mac OS 10.10.3
Android studio:1.2.11
grandle:2.2.1

the log bombe

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')
}

avant cela, j'avais compiler la ressource android 4.4 sur mon Mac, et modifié certains fichiers dans le système D'exploitation, je pense que c'est la raison, mais j'ai oublié quel fichier, Quelqu'un a rencontré ce problème encore ""

40
demandé sur CommonsWare 2015-05-28 15:19:15

7 réponses

dans mon cas j'ai téléchargé la version 22 D'Android M et Android 5.1.1 en utilisant Android Studio 1.2.1.1 mais quand j'essaie de faire un Hello World cette même erreur m'a montré

donc la solution était d'aller faire clic droit dans l'application comme l'image ci-dessous et de choisir"Ouvrir les paramètres du Module".....

enter image description here

alors là vous avez 2 options. J'ai changé les deux avec la dernière version que j'ai eu.

compiler Version SDK à API 21 Lollipop

enter image description here

et construire des outils Version à 21.1.2

enter image description here

enfin nettoyer le projet et construire

mise à jour Voici ma construction .gradle pour comparer avec votre construire.Grad .

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'
}

mise à JOUR

pour obtenir Android Studio 1.3 suivre ces étapes ""

  1. ouvrez la fenêtre de paramètres en choisissant Fichier > Paramètres.
  2. choisissez L'apparence et le comportement > paramètres du Système > Panneau mises à jour.
  3. sur le panneau Mises à jour, choisissez L'option Vérifier automatiquement les mises à jour pour: Canary Chanel.
  4. sur le panneau Updates, sélectionnez Check Now pour vérifier la dernière version de canary. 5. Télécharger et installez le build quand on vous le demande.

alors vous aurez quelque chose comme ceci pour mettre à jour votre studio Android à 1.3 et avec cela vous pouvez tester Android M

enter image description here

69
répondu Jorge Casariego 2016-01-29 18:49:26

I solve my issue, set the build tools version from 21.1.2 to 22.0.1, hope it can help who meet the same.

Je résous mon problème, j'ai mis la version build tools de 21.1.2 à 22.0.1, j'espère qu'elle pourra aider ceux qui rencontrent la même chose.

20
répondu user2580278 2015-06-03 02:19:23

pour ceux qui ont encore l'erreur" aidl est manquant":

pour moi, remettre en arrière la version build tools n'est pas une solution du tout.

sur votre construction de niveau supérieur.fichier gradle, essayez de configurer: classpath 'com.android.tools.build:gradle:1.3.0' classpath 'com.google.gms:google-services:1.3.1'

et ensuite utiliser buildToolsVersion '23.0.1' .

ça a parfaitement fonctionné pour moi. J'espère que cela aide les autres.

15
répondu Sergio Correa 2015-09-10 07:33:27

après les captures d'écran de Jorge post tout ce que vous avez à faire est de vous assurer que vous ne pas sélectionnez construire des outils Version 23.0.0 rc1. Je n'ai pas entièrement enquêté sur cette version dans L'IDE ou sur le bug tracker de Google, mais tout ce que j'avais à faire était de choisir la version précédente de l'outil et cela fonctionnait très bien après avoir fait une construction propre. J'ai essayé avec différentes versions de SDK min.

J'exécute OSX 10.10.3 avec Android Studio 1.2.1.1 sur Oracle JDK 1.8.0_45-B14

MISE À JOUR AVEC LA SOLUTION Ce problème est identique dans la nature échec de l'Exécution de la tâche:app:compileDebugAidl': aidl est manquant . Merci de lire mon post pour la bonne solution et les références à la genèse de la solution.

8
répondu Johnny Mohseni 2017-05-23 12:16:42

les gens qui construisent des applications avec Android studio 1.3 preview pourraient obtenir Debug AIDL erreur manquante Solution: (suivre dans l'ordre) 1) Télécharger tous les outils sous preview channel (c'est-à-dire la révision n ° 23.0.0 rc1) 2) Télécharger les services de lecture et le soutien android repo sous extras 3) Redémarrer Android Studio 4)Appuyez sur F4 et définissez compiler la version SDK à L'API 22+ et construire la version de l'outil 23.0.0 rc1 5)une construction ouverte.gradle(projet:******) et changer la ligne classpath avec classpath "com.Android.outils.construire:gradle:1.3.+ '

2
répondu Mayank Metha 2015-05-30 04:23:31

j'ai suivi des captures d'écran du post de Jorge. Mais N'avait pas API 21 comme option. J'ai donc gardé la version SDK compilée ' API 22: Android 5.1 (Lollipop)' telle quelle et j'ai changé la Version de L'outil de compilation de 23.0.0 rc1 à 22.0.1

j'ai aussi dû installer JDK 7 car 22.0.1 ne supportait pas JDK 6. Après cette construction de Grad a réussi.

enter image description here enter image description here

1
répondu vaichidrewar 2015-06-02 04:25:13

d'après mon expérience, il ne s'agit pas de compiler la Version Sdk ou construire la Version de L'outil , mais de nouvelle Structure du projet . Selon ce issue , les fichiers Aidl sont censés être dans src/main/aidl , une fois que vous mettez *.aidl à l'annuaire supposé, Studio Android le servirait comme prévu.

Et Si vous voulez les avoir dans src / main / java, alors vous avez besoin de l'instruction de remappage comme vous avez spécifié , comme ci-dessous:

sourceSets {
    main {
        aidl.srcDirs = ['src/main/java']
    }
}

btw, dans ma situation, l'approche remapping ne fonctionne que par Gradle 2.4(probablement aussi au-dessus de la version).

1
répondu VinceStyling 2015-06-23 05:21:46