이란 - provided android studio




항목의 상위 검색 오류:AppCompat v23으로 업그레이드 한 후 주어진 이름과 일치하는 자원이 없습니다. (16)

API 23에서 22로 다운 그레이드하고 싶었고이 오류가 발생했습니다. 컴파일하기 위해 프로젝트의 모든 build.gradle 파일을 변경 해야 build.gradle .

android {
    compileSdkVersion 22
    buildToolsVersion "22.0.1"

    defaultConfig {
        applicationId "com.yourapp.app"
        minSdkVersion 14
        targetSdkVersion 22
    }
...
dependencies {
    compile 'com.android.support:appcompat-v7:22.2.1'
    compile 'com.android.support:support-v4:22.2.1'
    compile 'com.android.support:design:22.2.1'
    compile 'com.google.android.gms:play-services-gcm:10.0.1'
}

나는 항상 Eclipse로 Android를 프로그래밍했으며 Android Studio로 마이그레이션을 시작하기로 결정했습니다. 나는 이미 Eclipse와 동일한 SDK를 사용하기로 결정했다.

  • 새로운 프로젝트 시작
  • 최소 SDK 4.0 설정 (API 레벨 14)
  • 빈 활동 선택 옵션
  • 활동 이름 및 레이아웃 이름에 사용 된 기본 이름
  • 히트 마무리

몇 초 후 Gradle은 빌드를 완료하고 Teste4 \ app \ build \ intermediates / exploded-aar \ com.android.support \ appcompat-v7 \ 23.0.0 \ res \ values ​​파일에 다음 메시지와 함께 두 가지 오류가 발생합니다. -v23 \ values-v23.xml :

오류 : (2) 항목의 부모를 검색하는 동안 오류가 발생했습니다 : 주어진 이름 'android : TextAppearance.Material.Widget.Button.Inverse'와 일치하는 리소스를 찾을 수 없습니다.

오류 : (2) 항목의 부모를 검색하는 동안 오류가 발생했습니다 : 주어진 이름 'android : Widget.Material.Button.Colored'와 일치하는 리소스를 찾을 수 없습니다.

파일-> 프로젝트 구조-> 모듈 : 앱 (왼쪽 열)-> 속성 탭 에서 다음 버전을 설정했습니다.

  • "컴파일 SDK 버전": Android 5.1 (API 레벨 22)
  • "빌드 도구 버전": 23.0.2

이 문제를 해결하려면 어떻게해야합니까?

이미 스택 오버플로 질문 appcompat-v7 : 21.0.0 ' 에서 제안한 사항을 시도했습니다 .attr'android : actionModeShareDrawable '과 같은 이름과 일치하는 리소스를 찾을 수 없지만 작동하지 않습니다.


Android Studio를 업그레이드하십시오.

Android Studio 1.3.1 에서이 문제가 있었지만 다른 답변은 저에게 효과적이지 않았지만 1.5.1로 업데이트 한 후에는 아무런 문제가 없었습니다.


SDK에서 업데이트 및 설치하려면 최신 버전으로 프로젝트를 컴파일해야합니다. sync project with Gradle file 버튼을 sync project with Gradle file 하여 프로젝트 sync project with Gradle file 프로젝트를 sync project with Gradle file 하십시오.
기존 버전을 계속 사용할 수 있지만 이미지 아래에서 올바르게 설치되었는지 확인하면 올바르게 설치된 API 22를 나타냅니다.

필요한 경우 프로젝트를 동기화하십시오.

도움이 될 수 있습니다.


Tanis.7x에서 지적했듯이 지원 라이브러리 버전 (23)이 targetSdkVersion (22)과 일치하지 않습니다.

다음을 수행하여이 문제를 해결할 수 있습니다.

앱 모듈의 build.grade 파일에서 다음 코드 줄을 변경하십시오.

compile 'com.android.support:appcompat-v7:23.0.0'

compile 'com.android.support:appcompat-v7:22.+'

SdkVersion 22와 호환되는 최신 버전의 appcompat 버전을 사용합니다.


phonegap (cross-platform)을 사용하고 위의 동일한 문제가 발생하면 아래 명령을 사용하여 안드로이드 플랫폼을 제거하십시오.

phonegap 플랫폼은 안드로이드를 제거

그리고 다시 추가하십시오.

phonegap 플랫폼 안드로이드 추가

그런 다음 문제가 해결되었습니다.


sdk를 업데이트 할 때 문제가 발생했습니다. 다른 buildToolsVersion ('22 .0.1 ') 을 사용하고 컴파일'com.android.support:appcompat-v7:23.0.0 ' 과 같은 다른 지원 라이브러리를 사용하고있는 해결책을 찾았습니다. 아래 이미지에서 당신을 보여주는

이것은 " android.widget.Material ..."의 문제를 일으켰습니다 . 그런 다음 컴파일 'com.android.support:appcompat-v7:22.0.1' 과 같은 지원 라이브러리와 동일한 버전을 사용했습니다. (아래 스크린 샷에 표시)


다른 사람들이 이미 언급했듯이 compile sdk versionsupport library's 주요 버전과 일치해야합니다. 그러나 이것은 subprojects 가있는 경우에도 관련이 있습니다.

그럴 경우 다음 스크립트를 사용하여 subprojects sdk 버전을 컴파일하도록 설정할 수 있습니다.

subprojects { subproject ->
afterEvaluate{
    if((subproject.plugins.hasPlugin('android') || subproject.plugins.hasPlugin('android-library'))) {
        android {
            compileSdkVersion rootProject.ext.compileSdkVersion
            buildToolsVersion rootProject.ext.buildToolsVersion
        }
      }
   }
}

이 스크립트를 루트 build.gradle 파일에 추가하십시오.


다른 해결책 :로 이동

\sdk\extras\android\m2repository\com\android\support\appcompat-v7\23.x.x

7-zip 또는 winrar로 .aar 파일을 열고 res 폴더에서 values-23 폴더를 제거하고 변경 사항을 저장하십시오.


모듈 : app (Gradle)

apply plugin: 'com.android.application'

android {
    compileSdkVersion 21
    buildToolsVersion "21.1.2"

    defaultConfig {
        applicationId "com.namepack.nameappxxxxx"
        minSdkVersion 16
        targetSdkVersion 21
        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:21.0.3'
}

프로젝트 : nameAppXXXX (Gradle)

buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:1.2.3'

    }
}

allprojects {
    repositories {
        jcenter()
    }
}

AppCompatActivity의 활동을 예를 들어 활동으로 편집하십시오.

package com.namepack.nameappxxxxx;


import android.os.Bundle;
import android.support.v7.app.ActionBarActivity;
import android.view.Menu;
import android.view.MenuItem;

public class NameClass extends ActionBarActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main_activity);
    }


}

업데이트 후 Android Studio는 기본적으로 API 버전 23 을 사용하기 때문에 발생합니다.

다음은 나를 위해 일했습니다.

Ctrl + Shift + Alt + S 를 눌러 프로젝트 구조 페이지로 이동하십시오. 속성 탭으로 이동하여 빌드 도구 영역에서 23.0.0 22.0.1 (또는 이전에 사용했던 것과 동일)로 변경하고 프로젝트를 다시 빌드하십시오.

그래도 작동하지 않으면 gradle : app 로 이동 한 다음

compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:22.2.1'

위와 같이 v7 : 23.0.0 에서 v7 : 22.2.1 을 편집하고 gradle 을 동기화하십시오. 이것은 확실히 작동합니다.


이전 답변에 동의합니다. 컴파일 SDK 버전은 지원 라이브러리와 일치해야합니다. 여기 내가 한 일이 있습니다.

  1. SDK Manager로 이동하여 SDK Platform에서 API 레벨 23이있는 Android 5.X를 설치할 수 있습니다.
  2. 프로젝트 구조에서 컴파일 SDK 버전을 API 23으로 변경하고 빌드 도구 버전을 23.0.0으로 변경하십시오.

그런 다음 문제없이 구축해야합니다.


제 경우에는 Google Play 서비스의 상위 버전이었습니다. 나는 그것들을 7.0.0 (8.x 아님)으로 설정했고 모두 괜찮았다.


컴파일 SDK 버전은 지원 라이브러리 메이저 버전과 일치해야합니다. 이것이 귀하의 문제에 대한 해결책입니다. build.gradle 파일의 Gradle Scripts에서 쉽게 확인할 수 있습니다. Fx : compileSdkVersion 이 23 인 경우 컴파일 라이브러리는 23에서 시작해야합니다.

  compileSdkVersion 23
    buildToolsVersion "23.0.0"
    defaultConfig {
        minSdkVersion 15
        targetSdkVersion 23
        versionCode 340
        versionName "3.4.0"
    }
dependencies {
    compile 'com.android.support:appcompat-v7:23.1.0'
    compile 'com.android.support:recyclerview-v7:23.0.1'
}

또한 Android Studoi에 지원되는 API 레벨이 있는지 항상 확인하십시오. 다음과 같이 Android SDK에서 확인할 수 있습니다.


컴파일 SDK 버전은 지원 라이브러리의 주 버전과 일치해야합니다.

지원 라이브러리 버전 23을 사용하고 있으므로 Android SDK 버전 23에 대해 컴파일해야합니다.

또는 최신 지원 라이브러리 v22로 전환하여 Android SDK 버전 22에 대해 계속 컴파일 할 수 있습니다.


Android Studio를 업데이트하면 기본적으로 API 버전 23이 사용되는데, 이것이 주요 원인입니다. 그래서,

먼저 build.gradle (Module : app)에서 AppCompat 버전을 확인하십시오.

23으로 변경 한 후 오류가 발생하면 다운로드하십시오.

Compile Sdk Version to API 23, and Build Tools Version to 23.0.0

SDK 관리자에서. 이미 다운로드 된 경우 :

1. Go to SDK Manager and
2. Under Project Structure, change *Compile SDK Version* to API 23, and *Build Tools Version* to 23.0.0

SDK 관리자 버튼을 클릭하고 대화 상자를 엽니 다.

SDK Platform을 클릭하고 Android 6.0이 다운로드되었는지 확인하십시오.

그렇지 않은 경우 먼저 다운로드하십시오. 다운로드가 완료되면 적용을 클릭 하십시오 .

이제 설정에서 프로젝트에 변경 사항을 적용해야합니다. 그런 다음 Ctrl + Alt + Shift + S 를 눌러 설정을 엽니 다

  1. 목록에서 앱을 클릭하십시오.
  2. 클릭 속성
  3. Compile SDK 버전 을 API 23으로 변경
  4. 빌드 도구 버전 을 23.0.0으로 변경

프로젝트를 다시 빌드하는 것을 잊지 마십시오.

그러면 오류가 사라질 것입니다.


이 문제는 이제 컴파일 SDK 버전이 Android 지원 라이브러리의 주요 버전과 일치해야하기 때문에 발생합니다.

제 경우에는 Android Support Library 버전 23이 있으므로 Android SDK version 23 에 대해 컴파일해야하며 build.gradle 파일에서이를 변경해야했습니다.

여러분 중 일부는 SDK, Android 6.0 (API 23) 을 설치해야합니다.

gradle 파일과 프로젝트 동기화하는 것을 잊지 마십시오





gradle