Сегодня я обновил Android Studio до 3.1, и теперь Android Studio сообщает, что не может разрешать символы для большинства ресурсов (например, ThemeOverlay в styles.xml или ?attr/actionBarSize). Похоже, что это пока не мешает мне создавать или запускать эмулятор, но эти ошибки заставляют меня нервничать.
Кто-нибудь еще сталкивался с этой проблемой? Как я могу решить эту проблему? Я пробовал синхронизировать gradle и очистить свой проект, но, похоже, это совсем не помогает.
Любые идеи?
Я использую Android Studio 3.1 с Gradle версии 4.4 и Gradle Plugin 3.1.0
Обновлено: Эта проблема затрагивает обновление до Android Studio 3.1.1, 3.1.2, 3.1.3, 3.1.4, а также подключаемого модуля Gradle до 3.1.1, 3.1.2, 3.1.3 и 3.1.4. Однако ответ ниже все еще работает.
в 3.1. 2 одинаковые проблемы ниже не работают, что делать
@HemanthSP Закрытие и импорт проекта у меня сработали после обновления Android Studio до 3.1.2.
Я пробовал 100 способов, ничего не работало
попробуйте это: stackoverflow.com/a/50114143/2855059
По какой-то причине эти атрибуты больше не встречаются в 26 библиотеках. Для увеличения этих библиотек вам также необходимо увеличить ваш compileSdk до 27.
Вероятно, вам также придется загрузить sdk 27
Краткая версия, далее в приложении «graddle»
android {
compileSdkVersion 27
//...
}
dependencies {
implementation 'com.android.support:appcompat-v7:27.1.0'
implementation 'com.android.support:design:27.1.0'
//...
}
Длинная версия, проверьте все следующие файлы:
gradle-wrapper.properties
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-4.4-all.zip
build.gradle (Проект)
buildscript {
repositories {
google()
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:3.1.0'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
allprojects {
repositories {
google()
jcenter()
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
И, наконец, build.gradle (приложение)
apply plugin: 'com.android.application'
android {
compileSdkVersion 27
defaultConfig {
applicationId "cl.cutiko.testingupdate"
minSdkVersion 21
targetSdkVersion 27
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'com.android.support:appcompat-v7:27.1.0'
implementation 'com.android.support.constraint:constraint-layout:1.0.2'
implementation 'com.android.support:design:27.1.0'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.1'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.1'
}
Спасибо, cutiko, но, к сожалению, мне это не помогает, так как я уже использовал API 27, и ваши файлы похожи на мои.
Хорошо, так что здесь дикая догадка, построить / перестроить проект? Также чисто?
Спасибо, cutiko. Я уже пробовал это, и это тоже не помогло.
После обновления Android Studio вы можете сделать кеш недействительным и перезапустить.
File> Invalidate Caches / Restart…
Спасибо, Jorgesys, но и у меня это не работает.
Впервые в истории простое решение действительно сработало! Спасибо.
@AhabLives Я надеюсь, что в будущих версиях AS эта проблема будет решена, но на данный момент достаточно отключить кеширование и перезапустить.
Попробовав несколько решений, у меня, наконец, работает
Закройте проект и снова импортируйте его. Работал у меня сегодня.

Аннулирование кешей, удаление кешей градиентов вручную и другие уловки не помогли. Закрытие проекта и его повторный импорт сработали. Ух ты! Я с нетерпением жду Android Studio 4.0. Может быть, это сожжет мой дом
Открыть существующий проект Android Studio также можно в Добро пожаловать в Android Studio.
Я закрыл и снова открыл проект как существующий проект Android Studio (не импортировал его), и он сработал!
Для тех из вас, кто не хочет повторно импортировать проект, решение, которое сработало для меня, находится здесь: stackoverflow.com/questions/49520097/…
К вашему сведению, я обновил Android Studio с 3.1 до 3.1.1, и проблема появилась снова. Однако этот ответ все еще работает, поэтому я обновил сообщение.
Сначала я увидел это и подумал, что это ничем не отличается от недействительности кешей, и я пробовал разные решения в течение 2 часов, ни одно из них не сработало, наконец, я попробовал, думая, что это никогда не сработает, но БУМ это сработало. Почему ты делаешь это со мной, Боже?
Что за..? Я потратил часы на эту проблему, попробовал все возможные решения, и это было решением? Я думаю, что Google должен просто признать, что они потерпели неудачу с AS.
ПОЧЕМУ ЭТО РАБОТАЕТ ?!
Wooowww я не знаю, почему это сработало, но большое вам спасибо.
Обратите внимание, что вы должны открывать его не из недавних проектов, а из выбора местоположения проекта.
Я могу подтвердить, что в конечном итоге это сработало и на AS 3.2.2. Я пробовал несколько раз, но проблема не исчезла. Потом несколько часов спустя, и теперь все работает. Определенно где-то есть проблемы с кешем или фоновым процессом. Я как раз собирался удалить всю свою установку AS, когда решил вернуться сюда и прочитать еще раз. Перед повторным импортом убедитесь, что вы удалили элемент из «старого» списка. Вдобавок я дважды щелкнул папку, чтобы перейти в корневой каталог, затем ok. (Разработчикам AS: добавьте процедуру очистки кеша. AS + Gradle в настоящее время отравляет систему артефактами.)
Закройте и снова откройте проект как существующий проект Android Studio.
Закрытие проекта, а затем открытие уже существующего творит чудеса!
Ааааи ... это сработало для меня! Удивительно. Хотя код и раньше компилировался нормально, красное подчеркивание меня слишком раздражает. Спасибо чувак.
Вы можете попробовать закрыть проект и выйти из Android Studio (только закрытие и повторный импорт не помогли мне). Запустите Android Studio и снова откройте проект. Это сработало для меня!
Я закрыл и снова открыл проект как существующий проект Android Studio (не импортировал его), и он сработал! Благодаря комментарию Андрей Глухофф.
Эта ошибка возникает из-за того, что библиотека поддержки не синхронизируется с вашим проектом. Чтобы вернуть его в синхронизацию, вы можете сделать следующие шаги:
Закомментируйте строки implementation для библиотеки поддержки. Для меня это выглядит так:
//implementation 'com.android.support:appcompat-v7:27.1.1'
//implementation 'com.android.support:recyclerview-v7:27.1.1'
//implementation 'com.android.support.constraint:constraint-la
Синхронизируйте свой проект с gradle. Теперь у вас будут ошибки. Не беспокойся об этом.
Раскомментируйте строки implementation, которые вы ранее закомментировали.
implementation 'com.android.support:appcompat-v7:27.1.1'
implementation 'com.android.support:recyclerview-v7:27.1.1'
implementation 'com.android.support.constraint:constraint-la
Снова синхронизируйте свой проект с gradle.
Ошибка «Невозможно разрешить символ» должна исчезнуть. Это сработало у меня несколько раз в разных проектах.
Примечание
Это действительно сработало для меня ... Закрытие проекта и повторный импорт не помогли.
implementation 'com.android.support:appcompat-v7:26.1.0'
implementation 'com.android.support.constraint:constraint-layout:1.1.2'
implementation 'com.android.support:design:26.1.0'
обновите свои зависимости с указанным выше в build.gradle (проект)
и поместите приведенный ниже код в build.gradle (Module: app)
classpath 'com.android.tools.build:gradle:3.1.1'
classpath 'io.realm:realm-gradle-plugin:3.7.1'
classpath 'com.google.gms:google-services:3.1.0'
Просто импортировать проект снова для меня не сработало.
Мое решение было
.idea внутри вашего проекта.File> Close ProjectFile> New > Import ProjectИЛИ ЖЕ из экрана приветствия Import Project (Gradle, Eclipse ADT, etc.).Смотрите скриншот для получения дополнительной информации
Или же
Для меня тот же симптом / ошибка был вызван перетаскиванием нового изображения в папку 'drawable-xxhdpi' с именем, которое не понравилось Android Studio - например, с числом или заглавной буквой в имени.
Никакого полезного сообщения об ошибке не было, только сообщение «не удается разрешить символ R».
Даже после синхронизации приложения и проекта очистки и восстановления проблема оставалась в том, что «R» не распознавался без указания других ошибок.
Закрытие и импорт проекта, как предлагалось в других ответах, не сработали, что имеет смысл с учетом основной проблемы.
Однако, хотя кажется, что это не сработало для других в прошлом, судя по другим вопросам и ответам на SO, удаление нового изображения из папки с возможностью рисования действительно сработало.
Точно так же и лучшее решение, очевидно, переименование изображения для удаления любых символов, которые не нравятся Android в именах ресурсов, а затем выполнение чистого и / или перестроенного проекта также работало.
Пример
setContentView(R.layout.activity_login_ativity);
Работай на меня :)
Не могли бы вы улучшить объяснение своего ответа? В противном случае этот пост, похоже, не отвечает на вопрос качественный ответ. Пожалуйста, отредактируйте свой ответ или просто опубликуйте его как комментарий к вопросу.
Проблема # 1
Моя проблема была связана с тем, как я использовал альфа / бета версию плагина Android.
File > Project Structure > Project
проверьте свой Android Plugin Version
Я использовал что-то под названием 3.3.0-beta, а в другом проекте 3.1.0-alpha
изменение его на 3.2.0, похоже, решает мою проблему, не забудьте также изменить его в build.gradle (Project)
Проблема # 2
У меня была ошибка в одном из моих файлов .xml. Я пропустил ресурс @string. Пожалуйста, проверьте все свои XML-файлы и убедитесь, что они все верны (открытие XML-файла должно активировать линтинг Android Studio, прокрутите файл, он должен жаловаться красным, если что-то не так)
Проблема # 3
В build.gradle я импортировал разные версии библиотек поддержки Android. например
implementation 'com.android.support:appcompat-v7:28.0.0'
implementation 'com.android.support:support-v4:27.1.0'
Убедитесь, что они одной версии. И убедитесь, что Android Studio ни на что не жалуется внутри ваших зависимостей gradle. Возможно, некоторые из ваших зависимостей также импортировали разные версии библиотеки поддержки Android.
Шаги, которые нужно предпринять после №1, №2 и №3
Очистите свой проект Build > Clean Project
Сделайте недействительный кеш и перезапустите File > Invalidate Caches / Restart
После перезапуска дождитесь завершения сборки gradle, а затем вуаля!
Я обновил свою версию gradle до 4.10.1 и сделал «исправить и повторно импортировать». Раньше в .idea не было папки с библиотеками. И тогда это сработало
Аналогичная ошибка у меня при обновлении до com.android.tools.build:gradle 3.3.1 и gradle-4.10.1
Я пробовал следующий метод, но не работал:
Clean Project - Rebuild ProjectInvalidate Caches / Restart.xml (с xml ошибок не обнаружил).imlЯ исправляю эту ошибку, изменяя com.android.tools.build:gradle 3.2.1 и Restart my mac, я не знал, какой из них может исправить, но это действительно сработало для меня.
в 3.1.1 мы тоже это получаем!