Android – Изменение компиляцииSdkVersion приводит к ошибкам

Я использую Android Studio 1.2.2 для разработки приложения для Android. В моем файле build.gradle я определил compileSdkVersion для 21 с самого начала работы. Теперь я хотел изменить это на 19, поскольку это программное обеспечение на самом деле никогда не будет установлено на Android-устройстве, которое работает с более высокой версией, чем Android 4.4

Когда я пытаюсь изменить это значение на 19, проект больше не компилируется.

После изменения значения версии у меня есть:

  • Синхронизировать проект
  • Очистил проект
  • Перестроить проект (попробовал)

Но возникает следующая ошибка:

В файле /projectpath/app/build/intermediates/exploded-aar/com.android.support/appcompat-v7/22.2.0/res/values-v21/values-v21.xml он отмечает 103 ошибки, говоря «не может разрешить символ".

Значения-v21.xml:

 <?xml version="1.0" encoding="utf-8"?> <resources> <!-- From: file:/usr/local/google/buildbot/repo_clients/https___googleplex-android.googlesource.com_a_platform_manifest.git/lmp-mr1-supportlib-release/frameworks/support/v7/appcompat/res/values-v21/styles_base_text.xml --> <eat-comment/> <style name="Base.TextAppearance.AppCompat" parent="android:TextAppearance.Material"/> <style name="Base.TextAppearance.AppCompat.Body1" parent="android:TextAppearance.Material.Body1"/> <style name="Base.TextAppearance.AppCompat.Body2" parent="android:TextAppearance.Material.Body2"/> <style name="Base.TextAppearance.AppCompat.Button" parent="android:TextAppearance.Material.Button"/> .... 
  • cannot resovle symbol android:TextAppearance.Material
  • cannot resovle symbol android:TextAppearance.Material.Body1
  • cannot resovle symbol android:TextAppearance.Material.Body2
  • cannot resovle symbol android:TextAppearance.Material.Button

и так далее…

Что вызывает эту ошибку? Что я могу сделать, чтобы снова скомпилировать его? Когда я меняю обратно compileSdkVersion на 21, все работает нормально снова.

Мой build.gradle:

 apply plugin: 'com.android.application' android { compileSdkVersion 19 buildToolsVersion '23.0.0 rc3' defaultConfig { applicationId 'com.appname.id' minSdkVersion 17 targetSdkVersion 19 versionCode 1 versionName "0.0.2 Alpha" } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } productFlavors { } } repositories { maven { url "https://oss.sonatype.org/content/repositories/snapshots/" } mavenCentral() } dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) compile 'com.android.support:appcompat-v7:22.2.0' } 

Для использования appcompat-v7:22.2.0 вы должны скомпилировать API 21 . Нет никакого вреда в этом, даже если он никогда не будет работать на устройствах, работающих 21 .

Вы можете попробовать более старую версию приложения, но тогда вы будете отсутствовать в «интересных новых функциях» и исправлениях ошибок из последней совместимости приложений.

Если это может помочь кому-то, после многих испытаний и ошибок я обнаружил, что я нацелился на неправильную версию SDK (более старую) в файле build.gradle, соответствующем «library». Чтобы изменить это, вы можете сделать это вручную или перейти в меню настроек модуля (щелкните правой кнопкой мыши по папке проекта -> «Открыть параметры модуля». Затем в «library» – «Свойства» вы можете изменить «Скомпилировать Sdk» и «Версии инструментов сборки»

Введите описание изображения здесь

Убедитесь, что вы установили API 19 в sdk manager