В каждом проекте, который я пытался создать в Android Studio, все случаи использования R отмечены красным с сообщением об ошибке «не удается разрешить символ R», но компиляция завершается успешно, и приложение запускается. Это действительно раздражает, так как оно блокирует автозаполнение и показывает огромные красные линии по всему моему коду.
Я использую Android Studio 1.7.0 и создаю проект с настройками по умолчанию. Скриншот прилагается:
Это мое build.gradle
:
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:0.4'
}
}
apply plugin: 'android'
dependencies {
compile files('libs/android-support-v4.jar')
}
android {
compileSdkVersion 17
buildToolsVersion "17.0.0"
defaultConfig {
minSdkVersion 7
targetSdkVersion 16
}
}
Вот как выглядит структура проекта:
Есть идеи как это исправить?
android
gradle
android-studio
Илья Коган
источник
источник
Ответы:
Просто нажмите « Build -> Rebuild Project» в вашей Android Studio.
источник
<menu xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" tools:context=".MainActivity">
Проверьте эти строки в XML-файлах и исправьте их.Я обнаружил, что эта проблема была вызвана тем, что у меня были ошибки в моих файлах XML. Как только вы исправите ошибки XML, выполните очистку / сборку, это исправит проблему.
источник
Нажмите
Build -> Rebuild Project
и затем нажмитеTools -> Android -> Sync Project with Gradle Files
.источник
clean
сделал всеR
ошибки, каждыйbuild
исправил их, но, конечно, «очистил» проект. После этого ответа я смог, наконец, очистить проект без ошибок.Убедитесь, что в вашем
AndroidManifest.xml
названии пакета указано правильное имя. Это устранило проблему для меня, когда мойR.whatever
был отмечен красным!Я также рекомендовал бы проверить все ваши
gradle
файлы, чтобы убедиться, что эти имена пакетов правильные. Это не должно сделать все красным, но это помешает вашимgradle
файлам синхронизироваться должным образом.источник
НЕ НИЧЕГО . Просто обновите Android Studio. Решите мою проблему! Работать отлично.
источник
У меня была похожая проблема с 'com.android.tools.build:gradle:3.3.1', я пробовал все вышеперечисленные решения, но ничего не получалось. Это было на самом деле build: gradle 3.3.1 проблема. Я изменил его на 3.2.1, тогда он работал.
Так что это может быть проблемой со сборкой: версия Gradle.
источник
Теперь вы должны увидеть папку «MyAppProject / MyApp / build / source». Он должен содержать папку «r» (где генерируется файл R.java). Здесь вы должны либо увидеть «debug», «release» синим цветом (если у вас есть projectFlavour в вашем build.gradle, они будут в папке «»). В этой папке отладки / выпуска должно быть имя пакета вашего приложения, а затем файл R.java, который содержит все ваши идентификаторы ресурсов.
источник
Если ни один из них не работает, проверьте все ваши XML-файлы. Эта ошибка возникает, когда ваш XML-файл неверен.
источник
По ряду причин Android-студия использует разные конфиги для редактора и для компилятора. Если это работает для компилятора, тогда это хорошо. Если это не работает для редактора. (он видит неразрешенные файлы).
Вам нужно добавить несколько каталогов в источник вашего проекта. Например, все ресурсы должны быть помечены как «источник».
Файл-> Структура проекта
Выберите «Модули», затем ваш проект. И выберите
sources
вкладку. Справа найдите каталог ресурсов и нажмите синюю кнопку «источник». Закройте все, и это должно работать.Кроме того, вы должны убедиться, что
build/source/r/debug
также источник. У меня все моиbuild/source/*/debug
помечены как источник.основной модуль .iml
проект имл
Черная магия
Не уверен насчет этого, но я слышал, что это работает, хотя я уверен, что это ничего не должно изменить. Попробуйте скомпилировать и сохранить проект после комментирования всех необходимых строк
R
. Тогда, когда все не красный. Попробуйте добавить их обратно. Странно, что ваша сборка / источник не генерируются.Также этот вопрос предлагает проверить "компилятор использует внешнюю сборку"
Android Studio не генерирует R.java для моего проекта импорта
Примечание
Также убедитесь, что в вашем коде Java нет.
import android.r;
из того, что вы показали, все выглядит нормально. Просто странно, что build / source не создается. Например, у меня нет сборки / apk. Может быть, вы находитесь в режиме релиза, и он не создает эти каталоги.источник
res
папка помечена как «исходная», а у меня нет папкиbuild/source
. Должен ли я получить это создано? Если да, то как?build/rebuil project
. Если вы можете запустить gradle из командной строки, это может привести к ошибкам, которые не отображаются в редакторе.Вот мое временное решение, пока я не найду лучшее:
Используя все, найдите, где R.java создан. В моем случае это было
C:\Program Files (x86)\Android\android-studio\system\compiler\<project-name>.cb969c52\.generated\aapt\<module-name>.6badd9a4\production\com\<project-name>\<module-name>
В представлении «Проект» щелкните модуль и нажмите F4. Не обращайте внимания на предупреждение.
Нажмите «+ Add Content Root» и выберите вышеупомянутую папку. Убедитесь, что он отмечен синим цветом (как источник).
После того, как я это сделал, внезапно все предупреждения исчезли. Проблема в том, что если вы сотрудничаете с другими людьми, имя папки на каждой машине различается, поэтому будьте осторожны при синхронизации.
источник
Это сработало для меня:
Закрыть и снова открыть проект
Нажмите «Синхронизировать проект с файлом Gradle» (рядом со значком диспетчера AVD в верхнем меню), повторите 1-2, если Gradle не может выполнить синхронизацию в первый раз. (мой работал во второй раз).
Работал с Android Studio 1.2.2
источник
Я решил это:
источник
Просто зайдите в список Android Top Top. нажмите на меню Build , в под Build нажмите на перестроить проект .
источник
Иногда эти ошибки сборки будут возникать из ниоткуда. Если это случилось с вами, попробуйте это:
Еще раз проверьте правильность XML в файлах ресурсов: если ваш файл R.java не был создан для последней сборки, вы увидите ошибки в своем проекте, где бы вы ни ссылались на ресурс. Это может быть вызвано опечаткой в одном из ваших XML-файлов. XML макета не всегда проверяется, поэтому опечатки в этих файлах могут быть не доведены до вашего сведения. Поиск опечатки и сохранение файла должны привести к регенерации R.java.
Очисти свой проект!
Select Build → Clean Project
Это восстановит проект с нуля, что может привести к безошибочной сборке.Синхронизируйте свой проект с Gradle!
Select Tools → Android → Sync Project with Gradle Files
Android Studio восстановит проект с нуля с правильными настройками проекта, которые могут помочь решить проблемы после изменения конфигурации Gradle.Запустите Android Lint! Lint может дать вам хорошую информацию о проблеме. Если вышеперечисленное не работает, именно здесь вы, скорее всего, найдете свою проблему. Чтобы запустить Lint,
select Analyze → Inspect Code → select Whole project → OK
тщательно проанализируйте предложения Lint; начать с ошибок, а затем предупреждений.Удачи.
источник
Эта ошибка происходит со мной, потому что в моем файле activity_main.xml есть неверный ввод.
Когда вы попытаетесь построить или очистить свой проект, вы увидите сообщения об ошибках .
Я решил мой, прочитав эти сообщения об ошибках , исправив ошибки в моем XML-файле. затем пересоберите проект .
источник
У меня была эта ошибка несколько дней назад, я пытался осмотреться, пока не решил переустановить Android Studio. Это сработало для меня.
источник
При создании проекта из образца, хотя не импортировать существующий проект, это хорошо (предотвращает конфликты с gradle, .idea, .iml, build, jars и apks, то есть со всеми ненужными файлами, генерируемыми при сборке), после создания нового проекта, копируя и вставив все соответствующие ресурсы, я бы порекомендовал:
проверка пакетов и импорт из пакетов в рамках проекта {объявление AndroidManifest и весь импорт в классах Java}, все ресурсы (drawable, mip-map, макеты и меню и ваш build.gradle (пример build.gradle для использования с последним sdk) может быть предоставлен по запросу)), чтобы увидеть, есть ли они там и действительно ли объявленные строки и идентификаторы существуют и использовались, после чего единственной ошибкой должен быть заданный вопрос:
Bulid-> Чистый проект
Сервис-> Android-> Синхронизировать проект с файлами Gradle
File-> Invalidate Cache and Restart
В худшем случае перезапуск вашей машины помогает.
Выше должно работать. Не стесняйтесь задавать вопросы, если это необходимо, т.е. оставлять комментарии.
источник
это происходит в основном из-за ошибок в файле XML, проверьте ваши последние изменения XML и перестройте его, та же проблема со мной.
источник
У меня была ошибка повторного использования копирования / вставки в декларации пакета для манифеста
имя основного действия имело правильный путь, поэтому в манифесте не было проверенных ошибок.
После устранения проблемы в исходном файле все еще отображались ошибки, хотя сборка прошла успешно. Я просто запустил приложение, а затем погасли индикаторы ошибок источника.
источник
Это также сработало для меня, выполнив ручную очистку папки .idea / library и затем щелкнув «Sync Project with Gradle Files», решил проблему. По-видимому, эта синхронизация не удаляет элементы, но сохраняет старые и добавляет текущие. Вероятно, ошибка, чтобы сообщить :)
источник
У меня была та же проблема с android studio, я обнаружил, что build / generate / source / r содержит только релизную папку, а не отладочную. Поэтому по какой-то причине отладочная сборка не сгенерировала пригодный для использования класс R.
Я решил это, открыв файл проекта iml и исправил эту строку
в
повторная синхронизация с gradle, закомментированные строки с использованием R, запуск отладки для генерации R, некомментированные строки с использованием R и повторная отладка, исправлено.
источник
Решение простое:
Перейдите
File > Project Structure > app
и выберитеFlavours
вкладку, выберитеAPI 21: Android 5.0 (Lollipop)
в раскрывающемся списке дляMin Sdk Version
.источник
В моем случае я следовал всем ответам, которые смог найти в Stackoverflow, и ни один из них, казалось, не решил эту проблему. Все ответы указывают на возможное повреждение XML-файла или конфликт с именами Gradle. В некоторых ответах говорилось, что необходимо очистить проект или синхронизировать проект с файлами Gradle. Ни одно из этих решений не решит проблему. Кроме того, как только я следовал учебному пособию по созданию приложения Hello World и просто следовал окнам мастера Android Studio без какого-либо кодирования вообще, не было бы никакого смысла подозревать, что это опечатка, похожая на эту.
TLDR
Проблема оказалась в версии Build Tools. Мой был установлен на 23.0.0 RC1 , поэтому я изменил его на 22.0.1 . Я полагаю, это потому, что я использую последний доступный выпуск Android Available.
Чтобы изменить это значение, вы можете открыть браузер проектов в левом окне> щелкнуть правой кнопкой мыши «приложение> Открыть настройки модуля» и найти его на «вкладке свойств».
источник
вам нужно импортировать ваш проект R файл
источник
Очистка проекта помогла в моем случае
Перейти к
источник
Если вы получаете эту ошибку, то очистите ваш проект.
Причиной этого является то, что при очистке вашего предыдущего
.apk
файла, который присутствует в папке проекта Android Studio в вашей системе, удаляется.источник
Недавно я импортирую свой проект в Android Studio, часть R помечена красным с ошибкой «не удается разрешить символ R», но компиляция завершается успешно, и приложение запускается.
Развивать evirment:
Решение:
шаг 1:
Найти файл конфигурации для студии Android
Мой путь:
шаг 2:
Изменить 2500:
до 5000 или более:
источник
Вы должны изменить путь:
например
import it.example.project.myproject.R;
изменить в
import it.example.project.R;
источник
Я столкнулся с той же ошибкой, оказалось, что файл манифеста имел некоторые ошибки. После исправления снова нажал Make Project, все заработало нормально. Android-студия иногда не выдает очень полезных сообщений об ошибках.
источник
Время от времени меня это укушает, и есть еще одна вещь, которую нужно попробовать: сопоставить версии compileSdk и buildSdk с самыми последними версиями.
Я изменил свой compileSdkVersion с 21 на 19, потому что отладчик Android Studio (1.1 канальный канал) не отслеживал должным образом встроенные библиотеки. Я обнаружил, что это, кажется, трассировка на основе buildToolsVersion (19.1.0), который я подтвердил, щелкнув по ошибке в трассировке стека (а затем выбрав 19 вместо 21). Хотя я изменил его непосредственно в файле build.gradle, здесь приведено графическое руководство: https://www.blogger.com/comment.g?blogID=4722727826918942842&postID=3875998513888772255 и я подведу итоги:
Подтвердите, и проект должен автоматически синхронизироваться правильно.
Урок, который я извлекаю из этого, заключается в том, что они должны быть одинаковыми.
источник