it-swarm.com.ru

Android Studio и Android.support.v4.app.Fragment: невозможно разрешить символ

Я пробую Android Studio вместо Eclipse. Я устанавливаю его, а затем запускаю совершенно новый проект и следую указаниям мастера. Я не добавляю собственный код.

Затем я щелкаю правой кнопкой мыши, чтобы создать новый компонент, новый фрагмент:

enter image description here

и выберите новый фрагмент:

enter image description here

и как только я это вижу, я вижу ошибки компиляции:

enter image description here

... так что я начинаю поискать в Google и обнаруживаю, что мне нужно установить и ссылаться на библиотеку поддержки 4 , и это я делаю. Когда я проверяю build.gradle (что нового для меня пришло из Eclipse), я вижу:

enter image description here

но я изменяю это на

enter image description here

потому что они так сказали здесь . После перекомпиляции и всего этого ошибка все еще там. Затем я ссылаюсь на файл .jar напрямую, например так:

enter image description here

и снова перекомпилируйте yada yada, но это тоже не поможет.

Такое поведение кажется мне очень странным. Что мне здесь не хватает? Это представление SDK Manager:

enter image description here

Так что же мне не хватает? Спасибо =)

51
Ted

Симптом этой проблемы обычно состоит в том, что сборка работает нормально из командной строки (что означает, что ваш файл build.gradle настроен правильно), но вы получаете ошибки подсветки синтаксиса в IDE. Выполните следующие шаги, чтобы решить проблему: нажмите на Инструменты с панели инструментов обычно в верхней части вашей IDE, а затем перейдите к Android затем перейдите к Синхронизировать проект с файлами Gradle кнопка. Мы понимаем, что не совсем идеально, что IDE не может просто позаботиться о себе, вместо того, чтобы заставлять вас вручную синхронизировать в нужное время; мы отслеживаем прогресс в этом в https://code.google.com/p/Android/issues/detail?id=63151

90
Scott Barta

У меня уже была следующая зависимость в моем build.gradle

implementation 'com.Android.support:support-v13:26.0.2'

Я перепробовал все следующее, 

  • Недействительные кэши/перезапуск
  • Синхронизировать проект с файлами Gradle
  • Чистый проект
  • Перестроить проект
  • gradlew чистый

Но никто из них не работал для меня.

Наконец, я решил это с помощью удаляя "/.idea/libraries", а затем синхронизировал с gradle и собрал снова.

93
Owen Chen

Попробуйте это, возможно, вам поможет. Перейдите в «Файл» -> «Отменить кеширование ...» и выберите опцию «Отменить и перезапустить», чтобы исправить это.

42
Suresh Parmar

У меня возникла та же проблема, так как я обновился до последней версии Android Studio 0.3.7. Так что вы можете попробовать мои вещи.

Убедитесь, что вы обновились до последней версии Репозиторий поддержки Android - 3 Библиотека поддержки Android - 19

Как показано на рисунке выше, вы уже сделали это. Затем добавьте следующий параметр в ваш build.gradle

dependencies {
    compile 'com.Android.support:support-v4:19.0.0'
}

Еще одна вещь: пожалуйста, убедитесь, что ваш Android SDK ориентирован на нужную папку SDK

9
Lam Do

"File" -> "Invalidate Caches ..."

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

6
Rohit Mandiwal

enter image description hereЯ нашел ярлык: Файл - Структура проекта - Вкладка: Зависимости Нажмите на зеленый знак +, выберите support-v4 (или любой другой, который вам нужен), нажмите OK.

теперь зайдите в свой файл Gradle и посмотрите, что было добавлено

6
Pedro Gonzalez

1> Файл -> сделать недействительными кэши 2> Построить-> Восстановить

это работа для меня

5
user5259011

Я использую самую последнюю версию AndroidStudio на сегодняшний день (10.11.2015) - v1.4 (сборка AI-141.2288178, построена 28 сентября 2015 года), и я собрал свой проект, и все работало нормально. Затем, после нескольких часов бездействия компьютера, я вернулся, отредактировал код, который не имел ничего общего с библиотеками поддержки, и начал видеть:

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

Решение было просто сделать 

Построить ... Восстановить проект ...

Я только упоминаю об этом, чтобы другие могли видеть это и знать, что это происходит там.

4
raddevus

Я использую бак, и похоже, что удалив /.idea/libraries в папке вашего проекта, и синхронизация gradle снова работает для меня. 

4
Nathania Sutedja

Для меня: Build-> Clean Project решил этот вопрос

1
Michael Yang

Android-студия имеет возможность управлять зависимостями. Следуй пути. 

  1. Нажмите на файл, затем выберите структуру проекта
  2. Выберите Модули "приложение"
  3. Нажмите вкладку "Зависимости"
  4. Нажмите на знак +, выберите Библиотека Зависимости
  5. Выберите support-v4 или другие библиотеки по необходимости и нажмите OK 

К вашему сведению проверьте ссылкуstackoverflow.com/a/33414287/1280397

0
Ranjit Chandel

Чтобы немного преуменьшить «магию» этого вопроса. Вам нужно подключение к Интернету после внесения этих изменений. Если по какой-либо причине требуемые библиотеки не могут быть загружены, вместо того, чтобы дать соответствующее сообщение (например, «Не удалось получить библиотеки»), вы просто получите ту же ошибку сборки .. С этим боролись час, прежде чем поняли, что VPN моей компании заблокировал репо.

0
Dennis K

Сделать что-нибудь модификация (просто для синхронизации синхронизации) на уровне приложения build.gradle и синхронизация. Снова, переделайте то, что вы изменили в build.gradle и синхронизируйте. Это должно исправить вашу проблему. 

0
Uddhav Gautam

Я столкнулся с той же проблемой. Как выяснилось в моем build.gradle файле было следующее: 

configurations {
    all*.exclude group: 'com.Android.support'
}

Удаление, которое исправило мою проблему. Так что, ребята, если вы делаете все это, но проблема по-прежнему не устранена, поищите в файле Gradle какие-либо ключевые слова exclude .

0
Rana Ranvijay Singh

Для всех, кто заходит в этот поток и строит с помощью maven: Добавьте зависимость support-v4 и соберите, чтобы загрузить репозиторий.

Затем добавьте библиотеку вручную в свой проект:

Структура проекта -> Библиотеки -> Добавить

И перейдите к репозиторию для правильного файла JAR: C:\Users\XXXXXXX\.m2\repository\com\google\Android\support-v4\r7\support-v4-r7.jar

0
kaiser

Хм ... Я не знаю, сколько раз это происходило до сих пор: Я тестирую, пробую, гуглю, тестирую снова и возиться часами, а когда я, наконец, сдаюсь, я иду в свой доверенный Stackoverflow и пишу подробный и понятный вопрос.

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

Я не могу сказать, почему это произошло, потому что я ничего не меняю в коде, кроме того, что я уже пробовал, как указано выше. Но внезапно ошибка компиляции исчезла!

В build.gradle теперь он говорит:

dependencies {
    compile "com.Android.support:appcompat-v7:18.0.+"
}

который изначально не работал, ошибки компиляции не исчезли. прошло около 30 минут, прежде чем IDE получил его, кажется ... хм ...

=== РЕДАКТИРОВАТЬ === Когда я снова вижу build.gradle, он теперь изменился и выглядит так:

dependencies {
    compile 'com.Android.support:support-v4:18.0.0'
    compile "com.Android.support:appcompat-v7:18.0.+"
}

Я не совсем уверен, что такое appcompat прямо сейчас.

0
Ted

Я столкнулся с этой проблемой и перепробовал все, включая File> Invalidate Caches, но ничего не получалось. Причина, по которой эта проблема возникла у меня, заключалась в том, что у меня были внешние проекты, которые использовали версию AppCompat, отличную от моего основного файла Gradle.

После того, как я обновил все файлы Gradle до одной и той же версии, ошибка компиляции исчезла.

0
Michael Miscampbell

Я обнаружил, что если у вас есть комментарии в вашем build.gradle, он может сломаться при попытке добавить новую библиотеку поддержки. Поэтому убедитесь, что вы проверили свой build.gradle и посмотрите, хорошо ли он выглядит вручную.

0
superarts.org

Дополнение ответа @daylight ...

перейти к макету, если ваш макет не отображается, покажет сообщение с 

"Совет:buildваш проект"

, Так что постройте свой проект и все будет хорошо.

0
Guilherme Ramos