ошибка ресурса в андроид студии после обновления: ресурс не найден

95

После недавнего обновления в Android Studio у нас возникли проблемы с получением проекта для компиляции ранее работавшего. Сначала мы получили следующую ошибку:

/Users/james/Development/AndroidProjects/myapp/app/build/intermediates/exploded-aar/com.android.support/appcompat-v7/23.0.0/res/values-v23/values-v23.xml
Error:(2) Error retrieving parent for item: No resource found that matches the given name 'android:TextAppearance.Material.Widget.Button.Inverse'.
Error:(2) Error retrieving parent for item: No resource found that matches the given name 'android:Widget.Material.Button.Colored'.

Я обновил цель сборки sdk в нашем файле gradle до 23, что сделало эту проблему проблемой, но она оставила нам массу ошибок пакета apache.http(в частности, тонна пакетов apache, которые мы используем для http-материал теперь ушел в sdk 23).

Что я хочу сделать, так это решить странную ошибку ресурса, но без обновления для sdk 23. У меня нет времени переписывать нашу библиотеку инструментов прямо сейчас, чтобы использовать любую новую реализацию компонентов apache http, У кого-нибудь есть идеи?

  • 0
    Разве вы не получаете ошибку в самом файле appcompat_v7 res / values-v23 / styles.xml (а не в вашем проекте)?
  • 1
    Не уверен, что понимаю ваш вопрос? Мы получили проблему в сгенерированном файле, как указано путем к файлу в сообщении об ошибке, опубликованном выше.
Показать ещё 1 комментарий
Теги:

14 ответов

81
Лучший ответ

Измените версию appomppat в файле build.gradle до 22.2.1 (или что бы вы ни использовали раньше).

  • 5
    Спасибо, это было решение. Я следовал инструкциям здесь: code.google.com/p/android/issues/detail?id=183122#makechanges, в частности, решение, предлагаемое Скоттом. Мне пришлось удалить 23.0.0 в моей папке SDK, удалить версию 23 SDK в диспетчере SDK, а затем сделать чистую и восстановить
  • 4
    Джеймс, спасибо за решение. Тем не менее, я просто чертовски изумлен этой ситуацией PITA - потому что у меня никогда не было appcompat-v7: 22.2.1!
Показать ещё 7 комментариев
197

Вам необходимо установить для compileSdkVersion значение 23.

Так как API 23 Android удалил устаревшие пакеты Apache Http, поэтому, если вы используете их для запросов сервера, вам нужно добавить useLibrary 'org.apache.http.legacy' в build.gradle, как указано в this:

android {
    compileSdkVersion 23
    buildToolsVersion "23.0.0"
    ...

    //only if you use Apache packages
    useLibrary 'org.apache.http.legacy'
}
  • 2
    Это работает для меня, возьми мой upvote :)
  • 1
    Это будет работать, но вы должны обязательно установить новую версию SDK. API 23 (платформа Android 6.0). Это позволит вам поддерживать более новые устройства. Вот почему при изменении «версии appcompat» на более новую версию потребуется более новая версия SDK.
Показать ещё 11 комментариев
22

в ваших проектах build.gradle file... напишите, как показано ниже. Я решил эту ошибку, изменив версию appomppat с версии v7.23.0.0 на v7.22.2.1..

dependencies

{

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

}

Изображение 6205

  • 1
    Нет нет нет .... я этого не ожидал! НО ЭТО РАБОТАЛО !! Какой смысл обновлять его до 23.0.1?
  • 0
    Этот получает мой +1: не всегда уместно просто обновить до последней версии все, что вам сразу скажут. Этот ответ на оригинальный вопрос, и устраняет проблему для меня.
Показать ещё 1 комментарий
10

Внимание, неправильный ответ! Но любой, у кого нет библиотек apache, может найти

compileSdkVersion 23
buildToolsVersion "23.0.0"



//...


dependencies {
compile 'com.android.support:appcompat-v7:23.0.0'
compile 'com.android.support:design:23.0.0'    

}

полезно, он помогло.

  • 0
    Почему у него такая проблема с библиотеками apache?
4

вы должны изменить свою compiledsdkversion и targetversion на 23 в файле build gradle, специфичном для приложения. Убедитесь, что вы установили sdk 23, версия 6.0 до этого. Вы можете посмотреть этот vid для получения дополнительной помощи. https://www.youtube.com/watch?v=pw4jKsOU7go

2

Попробуйте выполнить все версии:

compileSdkVersion 23
buildToolsVersion '23.0.0'
targetSdkVersion 23
compile 'com.android.support:appcompat-v7:23.0.0'

Это работает для меня.

2

Если вы получаете ошибки даже после загрузки новейших SDK и Android Studio, я новичок: то, что я сделал, было 1. Загрузите недавний SDK (я был) 2.Open file-Project structure (ctrl + alt + shift + S ) 3. В модулях выберите приложение 4.In properties tab..change скомпилируйте версию sdk для api 23 Android 6.0 marshmallow (последняя)

убедитесь, что компиляция версии adk versionand buildtools имеет одинаковую версию (23)

Надеюсь, это поможет кому-то, чтобы он не страдал, как я это делал в течение этих нескольких дней.

1

если у вас есть:

/Users/james/Development/AndroidProjects/myapp/app/build/intermediates/exploded-aar/com.android.support/appcompat-v7/23.0.0/res/values-v23/values-v23.xml
Error:(2) Error retrieving parent for item: No resource found that matches the given name 'android:TextAppearance.Material.Widget.Button.Inverse'.
Error:(2) Error retrieving parent for item: No resource found that matches the given name 'android:Widget.Material.Button.Colored'.

вы должны изменить свои appcompat, buildtools, sdk на 23 но если вам не нравится менять его и должно быть в 22 сделайте следующее:

  • compile 23
  • target 22
1

compileSDK должен соответствовать версии appCompat. TargetSDK все равно может быть 22 (например, если вы еще не обновили новую модель разрешения)

0

Способ 1: Он показывает. Вы не установили Api 23. Поэтому, пожалуйста, установите API 23.

Способ 2:

Измените версию appomppat в файле build.gradle на 22.0.1 (или меньше).

0

Обновите использование API 23 (Android 6.0) или измените версию appcompat-v7 на 22.2.2 в Gradle. Эта работа для меня, когда вы добавляете сервис google play

0

Прежде всего,

Попытайтесь проверить свою папку SDK, для меня это были mydocuments/appdata/sdk.... и т.д. Так что в основном моя папка sdk не была полностью загружена, главным источником этой проблемы. Вам нужно либо использовать еще один полностью загруженный Android файл sdk (включая раздел "Инструменты" и дополнительные приложения, которые вам действительно нужны), либо использовать eclipse sdk, которые вы можете загрузить ранее для своих разработок в области Eclipse android. Затем build- > очистите проект еще раз.

Стоит попробовать.

0

Я заметил, что у меня не было установленного sdk 23. Поэтому я впервые установил его, а затем перестроил мой проект. И все получилось отлично. Также compilesdkVersion должно быть 23

0

Он работает только тогда, когда build.grade был изменен на это:

android {
    compileSdkVersion 22
    buildToolsVersion "22.0.1"

    defaultConfig {
        applicationId "blablabla"
        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.0.0'
}

Ещё вопросы

Сообщество Overcoder
Наверх
Меню