Android 스튜디오-android-18 대상을 찾지 못했습니다.


95

Android Studio 0.2.3에 문제가 있습니다.

내 프로젝트를 실행하면 빌드가 중지되고 다음과 같은 메시지가 나타납니다.

Gradle : ': AppName : compileDebugAidl' 작업에 대한 실행이 실패했습니다 .
> 대상 android-18을 ​​찾지 못했습니다.

Android 4.3 (API 18)의 SDK 플랫폼을 설치했고 모든 SDK를 다시 설치하려고했습니다. 또한 ANDROID_HOME시스템 변수에 변수를 추가했습니다 .

이 오류의 원인은 무엇입니까?


프로젝트의 최소 목표는 무엇입니까?
Dave Alperovich 2013-08-05

Android 2.3.3 (API 10)
RobertoAV96 '2013 년

1
내 .bash_profile의 ANDROID_HOME 변수를 내 Android Studio SDK 위치 (v18을 다운로드 한 위치)로 설정하면이 문제가 해결되었습니다!
Daniel Smith

사용자 홈 경로에 분음 부호가 있었는데 도움이되었습니다. stackoverflow.com/a/53994123/5242995
Martin Široký

답변:


119

Android-18 sdk가 설치되어 있지 않을 수도 있습니다. 도구> Android> SDK 관리자로 이동하여 Android 4.3 (API 18)이 설치되어 있는지 확인합니다.


10
사실 문제가 생겼을 때 Android-18 sdk가 설치되었지만 Android Studio에서 감지하지 못한 것 같습니다. SDK 및 Studio를 제거하고 다시 설치하여 문제를 해결했습니다.
RobertoAV96 2013 년

3
비슷한 오류가 발생했을 때 완전한 재설치보다는 Android Studio를 다시 시작하는 것으로 충분했습니다.
Code-Apprentice

1
Mac을 다시 시작하는 것은 IntelliJ가 나를 위해 새로 설치된 SDK를 볼 수있는 유일한 방법이었습니다.
codeulike

50

나는을 변경하여 문제를 해결 compileSdkVersionGradle.build의 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 세 이상에서 사용할 수있는 기능
다니엘 스미스에게

대신 최신 SDK를 사용하려면 어떻게해야합니까? 이 라이브러리에 비슷한 문제가 있습니다 : github.com/devunwired/custom-view-examples , 비슷한 단계를 수행했지만이 오류가 발생합니다.
안드로이드 개발자

10

1 단계) Android SDK 관리자 시작

android아래와 같이 명령 뭔가,

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

2 단계) API 18 찾기

여기에 이미지 설명 입력

STEP 3) Android 4.3 (API 18)을 선택하고 패키지를 설치합니다.


5

Android Studio (0.8.1)에서 나를 위해 일한 것 :

  1. 프로젝트 이름을 마우스 오른쪽 버튼으로 클릭하고 모듈 설정을 엽니 다.
  2. SDK 위치 확인 SDK
  3. Gradle 및 플러그인 버전 확인 (사용할 적절한 버전에 대한 오류 메시지 힌트 검토) Gradke
  4. 앱 모듈에서 Compile SDK 버전을 android-L (최신)으로 설정합니다.
  5. 빌드 도구 버전을 사용 가능한 가장 큰 값으로 설정합니다 (제 경우에는 20.0.0). 짓다

UI를 통한 이러한 변경은 다른 답변에 표시된 것과 동일한 변경을 수행하지만 종료시 모든 적절한 파일 (현재 및 미래)이 자동으로 업데이트되기 때문에 더 나은 진행 방법입니다 (문제가 발생할 수있는 여러 장소에 직면했을 때 유용합니다. ).

NB : 이벤트 로그를 검토하고 Android 스튜디오가 이러한 문제를 해결하는 다른 방법에 대한 유용한 메시지를 제공한다는 점에 유의하는 것이 매우 중요합니다.


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 관리자에서 찾을 수있는 적절한 SDK 도구 패키지를 설치하라는 메시지가 표시 될 수 있습니다 (sdk는 sdk 도구와 동일하지 않으며 보완 패키지입니다).

도구 패키지를 찾을 필요도 없습니다. 오류 메시지 아래의 링크를 클릭하면 Android Studio가 SDK Manager를 호출하여 패키지를 자동으로 설치해야합니다.

Android Studio를 다시 시작하면 해결 방법을 시도한 경우보다 훨씬 빠르게 작동하고 실행됩니다.

RULE OF THUMB> 옵션 및 구성을 엉망으로 만들기 전에 응용 프로그램을 다시 시작하십시오.


1

Studio 프로젝트에서 local.properties 파일을 확인하십시오. 스튜디오 이전 시대의 이전 Android sdk를 설정 / 구성한 경우 sdk.dir 속성이 잘못된 폴더를 가리킬 가능성이 있습니다. 이것이 제 경우의 해결책이었습니다.


0

Android Studio를 시도 할 때 동일한 문제가 발생했습니다. 이미 SDK 18에 따라 ADT에서 실행중인 프로젝트가있었습니다. 매니페스트 파일을 해킹 할 필요가 없습니다.

해결 방법 :

export ANDROID_HOME = pathtobundle / adt-bundle-linux-x86_64-20130729 / sdk

ADT가 설치되어 있지 않고 SDK 만 원하는 경우 모든 것을 설치 한 다음 Android Studio가 패키지 된 SDK를 가리 키도록하는 것이 좋은 해결책 인 것 같습니다.

cd pathtobundle

wget 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가 대상 이미지를 찾을 수 없다는 거짓말이었습니다). Android 개발을 위해 Eclipse를 사용하고 있었지만 Android Studio로 이동했으며 Android Studio가 이전에 만든 AVD를 찾을 수 없다는 것을 금방 발견했습니다.

문제는 Android Studio가 이전에 설치 한 독립 실행 형 SDK가 아닌 자체 Android SDK (C : \ Users \ username \ AppData \ Local \ Android \ android-studio \ sdk에 있음)를보고 있다는 점에있을 수 있습니다. C : \ adt \ sdk.

C : \ Users ...에서 Android Studio의 SDK 폴더 이름을 변경 한 다음 (일이 깨질 경우에만 이름을 변경) Android Studio SDK 위치와 독립 실행 형 Android SDK 사이에 심볼릭 링크를 생성하면이 문제가 해결됩니다.

또한 심볼릭 링크를 만드는 데 지루함을 없애기 위해 Link Shell Extension ( 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 버전이 설치되었는지 확인하는 것입니다. 그렇지 않은 경우 설치를 대상으로합니다.

오류 : 원인 : C : \ Users \ setia \ AppData \ Local \ Android \ sdk에서 해시 문자열 'android-19'로 대상을 찾지 못했습니다.


0

해시 문자열이 'android-18'인 Target은 SDK 레벨 18에 해당합니다. SDK 관리자에서 SDK 18을 설치해야합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.