Android Studio-无法找到目标android-18


94

我对Android Studio 0.2.3有问题。

当我运行项目时,构建将停止并显示以下消息:

Gradle:任务':AppName:compileDebugAidl'的执行失败。
>找不到目标android-18

尽管我已经安装了Android 4.3(API 18)的SDK平台,但尝试重新安装所有SDK。我还在ANDROID_HOME系统变量中添加了变量。

该错误的根源似乎是什么?


您的最低目标是什么?
Dave Alperovich

Android 2.3.3(API 10)
RobertoAV96

1
将我的.bash_profile中的ANDROID_HOME变量设置为我的Android Studio sdk位置(我下载了v18的位置)为我解决了这个问题!
丹尼尔·史密斯

我在用户家中遇到了变音符号,这有所帮助:stackoverflow.com/a/53994123/5242995
MartinŠiroký19年

Answers:


118

我认为您可能未安装Android-18 SDK。转到工具> Android> SDK Manager,然后检查是否已安装Android 4.3(API 18)。


10
实际上,当我遇到问题时,就安装了Android-18 SDK,但我认为Android Studio并未检测到它。我已通过卸载并重新安装SDK和Studio来解决。
RobertoAV96 2013年

3
当我收到类似的错误消息时,仅重启Android Studio就足够了,而不是完全重新安装。
法学徒

1
重新启动mac是让IntelliJ为我看到新安装的SDK的唯一方法。
codeulike

50

我通过将Gradle.build文件compileSdkVersion中的g从18更改为17 解决了该问题。

buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:0.5.+'
    }
}
apply plugin: 'android'

repositories {
    mavenCentral()
}

android {
    compileSdkVersion 17
    buildToolsVersion "17.0.0"

    defaultConfig {
        minSdkVersion 10
        targetSdkVersion 18
    }
}

dependencies {
    compile 'com.android.support:support-v4:13.0.+'
}

做得好。我认为,如果您提高最低目标,将会实现相同的目标。实际上,它可能不会在2.3.3上运行
Dave Alperovich

3
这确实不是解决问题的方法,特别是如果您尝试使用仅在18岁以上才能使用的功能
Daniel Smith

您如何仅使用最新的SDK来实现?我对该库有一个类似的问题:github.com/devunwired/custom-view-examples,即使我已经执行了类似的步骤,也会遇到此错误。
Android开发人员

10

步骤1)启动Android SDK Manager

使用以下android命令

$ /usr/local/android-studio/sdk/tools/android

步骤2)查找API 18

在此处输入图片说明

步骤3)选择Android 4.3(API 18)并安装软件包。


5

在Android Studio(0.8.1)中对我有用的是:

  1. 右键单击项目名称,然后打开“模块设置”
  2. 验证SDK位置 开发包
  3. 验证Gradle和插件版本(查看错误消息提示以使用正确的版本) 格雷德克
  4. 在应用模块上,将Compile SDK Version设置为android-L(最新)
  5. 将构建工具版本设置为最大可用值(在我的情况下为20.0.0) 建立

通过UI进行的这些更改做出了其他答案中表示的等效更改,但这是一种更好的进行方式,因为在关闭时,所有适当的文件(当前和将来的文件)都将自动更新(当遇到可能发生问题的许多地方时,这很有用。 )。

注意:查看事件日志并注意Android Studio提供了有关解决此类问题的替代方法的有用信息,这一点非常重要。


3

谢谢RobertoAV96。

你是我的英雄。但这还不够。就我而言,我同时更改了compileSdkVersion和buildToolsVersion。现在工作了。希望这个帮助

buildscript {
       repositories {
           mavenCentral()
       }
       dependencies {
          classpath 'com.android.tools.build:gradle:0.6.+'
       }
   }
   apply plugin: 'android'

   dependencies {
       compile fileTree(dir: 'libs', include: '*.jar')
   }

   android {
       compileSdkVersion 19
       buildToolsVersion "19"

       sourceSets {
           main {
               manifest.srcFile 'AndroidManifest.xml'
               java.srcDirs = ['src']
               resources.srcDirs = ['src']
               aidl.srcDirs = ['src']
               renderscript.srcDirs = ['src']
               res.srcDirs = ['res']
               assets.srcDirs = ['assets']
           }

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

2

如果您遇到问题,请打开SDK管理器,安装所需的更新,返回到Android Studio,然后再次遇到问题,建议您尝试其他操作后重新启动ANDROID STUDIO。

Gradle将自动运行,并且您的问题可能会结束。您很可能会被告知安装适当的SDK TOOLS软件包,该软件包可在您的SDK MANAGER中的第二个选项卡下找到(sdk与sdk工具不同,它们是互补软件包)。

您甚至不需要寻找工具包,如果单击错误消息下的链接,Android Studio应该调用SDK Manager来自动安装该包。

再次重新启动Android Studio,与尝试解决方法相比,您应该可以更快地启动并运行。

规则>重新启动应用程序,然后再弄乱选项和配置。


1

检查Studio项目中的local.properties文件。如果您已经设置/配置了Studio之前时代的先前android sdk,则可能sdk.dir属性指向错误的文件夹。这是我的解决方案。


0

试用Android Studio时遇到了同样的问题。我已经有在SDK 18下在ADT上运行的项目。无需修改清单文件。

固定于:

导出ANDROID_HOME = pathtobundle / adt-bundle-linux-x86_64-20130729 / sdk

如果您没有安装ADT,而只想要SDK,则似乎一个好的解决方案是安装所有组件,然后将Android Studio指向打包的SDK。

cd pathtobundle

get http://dl.google.com/android/adt/adt-bundle-linux-x86_64-20130729.zip

解压缩* .zip

正如其他人所说,在运行Studio之前,您可能需要运行SDK Manager来安装所需的软件包。


0

当我同时安装了Eclipse,Android Studio和独立的Android SDK时,我也遇到过类似的问题(该问题在于AVD Manager无法找到目标图像)。我曾经使用Eclipse进行Android开发,但后来转到了Android Studio,很快发现Android Studio找不到我先前创建的AVD。

问题可能在于Android Studio正在查看自己的Android SDK(位于C:\ Users \ username \ AppData \ Local \ Android \ android-studio \ sdk中),而不是以前安装的独立SDK(我已安装)在C:\ adt \ sdk。

在C:\ Users ...中重命名Android Studio的SDK文件夹(仅重命名它,以防万一),然后在Android Studio SDK位置和独立的Android SDK之间创建符号链接即可解决此问题。

我还使用了链接外壳扩展程序(http://schinagl.priv.at/nt/hardlinkshellext/linkshellextension.html)只是为了摆脱繁琐的创建符号链接的过程。


0

如果您编写了compileSdkVersion = 22例如(在“新的” Android构建系统中使用的)而不是,也会发生这种情况compileSdkVersion 22


0

您可以解决将Grandle.build文件中的compileSdkVersion从18更改为wtever已安装SDK的问题..... BUTTTTT

  1. 如果您尝试使用18至17之类的SDK版本,则不能使用18或18+版本中提供的功能

  2. 如果要迁移项目(将Eclipse迁移到Android Studio),那么当然,在现有Eclipse项目中没有build.gradle文件

因此,唯一的解决方案是确保安装或未安装SDK版本,您的目标是,如果未安装,则安装。

错误:原因:无法在以下位置找到带有哈希字符串“ android-19”的目标:C:\ Users \ setia \ AppData \ Local \ Android \ sdk


0

哈希字符串为“ android-18”的目标对应于SDK级别18。您需要从SDK Manager安装SDK 18。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.