Ответ 1
Закройте проект и снова импортируйте его. Работал для меня сегодня.
Сегодня я обновил Android Studio до 3.1, и теперь Android Studio заявляет, что не может разрешать символы для большинства ресурсов (например, ThemeOverlay
в styles.xml
или ?attr/actionBarSize
). Кажется, это мешает мне создавать или работать в эмуляторе до сих пор, но эти ошибки заставляют меня нервничать.
Кто-нибудь еще испытал эту проблему? Как я могу это решить? Я попробовал синхронизировать град и очистить свой проект, но он, похоже, совсем не помогает.
Есть идеи?
Я использую Android Studio 3.1 с Gradle версии 4.4 и Gradle Plugin 3.1.0
EDIT: эта проблема влияет на обновление до Android Studio 3.1.1, 3.1.2, 3.1.3, 3.1.4, а также Gradle Plugin до 3.1.1, 3.1.2, 3.1.3 и 3.1.4. Однако ответ ниже все еще работает.
Закройте проект и снова импортируйте его. Работал для меня сегодня.
Закройте и снова запустите проект в качестве существующего проекта 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
Синхронизируйте свой проект с помощью градиента. Теперь у вас будут некоторые ошибки. Не беспокойтесь об этом.
Раскомментируйте строки 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
Синхронизируйте свой проект с градием снова.
Ошибка "Невозможно устранить символ" должна исчезнуть. Это несколько раз работало для меня в разных проектах.
Заметка
После обновления Android Studio вы можете аннулировать кеш и перезапустить.
File
> Invalidate Caches/Restart…
По некоторым причинам эти атрибуты больше не найдены в 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(Project)
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'
}
Закрытие проекта, а затем открытие как существующего делает чудеса!
Просто импорт проекта снова не работал для меня.
Мое решение было
.idea
внутри вашего проекта.File> Close Project
File> New > Import Project
или из " Import Project (Gradle, Eclipse ADT, etc.)
экрана Import Project (Gradle, Eclipse ADT, etc.)
. Import Project (Gradle, Eclipse ADT, etc.)
.Смотрите скриншот для получения дополнительной информации
Или же
Вы можете попытаться закрыть проект и выйти из Android Studio (только закрытие и повторное перемещение этого не сделали для меня). Запустите Android Studio и снова откройте проект. Это сработало для меня!
Я закрыл и повторно открыл проект как существующий проект Android Studio (не импортировал его), и он сработает! Спасибо Андрею Глухофу.
Android-плагин для Gradle com.android.tools.build: gradle: 3.0.1/Gradle 4.1 решил эту проблему. Эта проблема вызвана Gradle 4.4. Он работает на Android Studio 3.1/3.1.2. Повторно открыть существующий проект/проект повторного импорта не требуется.
ОБНОВЛЕНИЕ: Android Studio 3.2 Canary 12 не имеет этой проблемы.
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(project)
и поместите приведенный ниже код в 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'
Для меня такой же симптом/ошибка была вызвана перетаскиванием нового изображения в папку "drawable-xxhdpi" с именем Android Studio не понравилось - например, с номером или капиталом в имени.
Никакое полезное сообщение об ошибке не было дано как раз "сообщение не может разрешить символ R".
Даже после синхронизации приложения и проекта по очистке и восстановлению проблема осталась, что "R" не был распознан без какой-либо другой указанной ошибки.
Закрытие и импорт проекта, как было предложено в других ответах, не сработало, что имеет смысл с учетом коренной проблемы.
Однако, несмотря на то, что, похоже, это не сработало для других в прошлом, судя по другим вопросам и ответам на SO, удаление нового изображения из папки с возможностью переноса действительно сработало.
Точно так же и лучшее решение, очевидно, переименование изображения для удаления любых символов, которые Android не нравится в именах ресурсов, а затем выполнение чистого и/или перепроектированного проекта также сработало.
Проблема № 1
Моя проблема была связана с тем, как я использовал альфа/бета версию Android Plugin
File > Project Structure > Project
проверьте Android Plugin Version
своего 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 не было папки с библиотеками. И тогда это сработало
Я обновил студию Android до версии 3.2, и два шага решили эту проблему.
Удален с приветственной страницы студии Android.
Откройте проект снова.
Работал для меня.
пример
setContentView (R.layout.activity_login_ativity);
Работа для меня :)