Error:Execution failed for task ':app:compileDebugAidl'. > aidl is missing(Android Studio编译错误)

今天下载了一个1.2.1.1版本的Android Studio,使用VPN更新好SDK之后就新建了一个hello world工程测试一下环境,然后就出现以下错误:

Error:Execution failed for task ':app:compileDebugAidl'. > aidl is missing

什么情况?全新安装的环境也有错误?Google发布这个工具时没有测试好吗?

没搞过这个工具,一阵搜索得到以下方案:

1、右键工程-》Open Module Settings


2、将Build Tools Version 由23.0.0 rc1改为22.0.1,与Compile Sdk Version API 22: Android 5.1 (Lollipop)对应


3、点击OK,Clean Project,Rebuild,成功


问题的原因?

根据解决方法应该可以初步确定为BuildTools Version与Compile Sdk Version不兼容导致。


为什么不兼容?

前几天Google I/O大会放出了M的preview,估计BuildTools Version也跟着升了,但是好像和L5.1的配合还没做好?


小问题,解决了记录以下,给后续可能遇到问题的同学一个参考,其他的也不需要太纠结。

已标记关键词 清除标记
相关推荐
我用的是Android Studio 1.4 ![图片说明](https://img-ask.csdn.net/upload/201604/20/1461137087_410343.png) ![图片说明](https://img-ask.csdn.net/upload/201604/20/1461137380_344758.png) 第二张图compile sdk version那里只能选api level 23. 在aidl包下我写了2个aidl文件,另外MainActivity那个包中的MyParcelClass,这3个和aidl有关。下面贴下代码: MyParcelClass.java ``` public class MyParcelableClass implements Parcelable { private int id; private String str; public MyParcelableClass(int id,String str) { this.id=id; this.str=str; } @Override public int describeContents() { return 0; } @Override public void writeToParcel(Parcel out,int flags) { out.writeInt(id); out.writeString(str); } private MyParcelableClass(Parcel in) { id=in.readInt(); str=in.readString(); } public static final Parcelable.Creator<MyParcelableClass> CREATOR=new Parcelable.Creator<MyParcelableClass>() { @Override public MyParcelableClass[] newArray(int size) { return new MyParcelableClass[size]; } public MyParcelableClass createFromParcel(Parcel in) { return new MyParcelableClass(in); } }; } ``` MyParcelClass.aidl: ``` package com.example.dell_pc.aldl; parcelable MyParcelableClass; ``` IMyParcelManager.aidl: ``` package com.example.dell_pc.aldl.aidl; import com.example.dell_pc.aldl.MyParcelableClass; // Declare any non-default types here with import statements interface IMyParcelManager { /** * Demonstrates some basic types that you can use as parameters * and return values in AIDL. */ void basicTypes(int anInt, long aLong, boolean aBoolean, float aFloat, double aDouble, String aString); void add(in MyParcelableClass mMyParcelableClass); MyParcelableClass get(); } ``` 与aidl有关的3个文件的代码如上,报这个错误好像是Android Studio不会自动生成IMyParcelmanager.java?但是我build,然后make project后就是这个样子,求解决方法,网上搜索的方法都不行
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页