R не может быть разрешен - ошибка Android

Я только что скачал и установил новый Android SDK. Я хотел создать простое приложение для его тестирования.

Мастер создал этот код:

package eu.mauriziopz.gps;

import android.app.Activity;
import android.os.Bundle;

public class ggps extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
    }
}

но Eclipse выдает ошибку

R не может быть разрешен

в строке

setContentView(R.layout.main);

Почему?

PS: У меня есть XML файл с именем main.xml в res/layout/.

Комментарии к вопросу (5)

После выслеживания этой проблемы, я нашел эту записку в документации Android:

http://source.android.com/source/using-eclipse.html

Примечание: затмение иногда любит добавить, что "импортировать Android.Р" в заявлении на В верхней части ваших файлов, которые используют ресурсы, особенно когда вы просите Eclipse для так или иначе управлять импортом. Это заставит ваш сделайте сломать. Смотреть за эти ошибочные импорт заявлений и удалить их.

При прохождении в нашем образце учебники, я бы часто использовать <и>сочетание клавиш Ctrl</роз> + <и>сдвиг</роз> + <и>о</КБД> команда, чтобы "организация импорта" и создать любые недостающие операторы импорта. Иногда это может создать неверное утверждение импорта, который бы скрыть R.java` класс, который автоматически создается при сборке.

Комментарии (16)

Каждый раз, когда у меня была проблема с R не были созданы, или даже исчезли, это было из-за проблем в файле xml-макета, которые мешают созданию приложения.

Комментарии (10)

Всякий раз, когда вы получаете

Р не может быть решен

затем проверьте директорию `/РЭС и там должен быть файл, что есть некоторые ошибки в нем и что мешает созданию приложения. Например, это может быть файл макета или это может быть из-за некоторых недостающих ресурсов, но вы уже определили его в XML-файл.

Если у вас есть какие-либо дополнительные, даже неиспользованные (!) или неиспользуемая (!) изображения в папке, как РЭС/рисунки-резкие, которые не соблюдают правила именования файлов (может содержать только [a-команды Z0-9_.]), класс R.java может не создавать, вызывая цепь событий, все остальные посты называют. Надеюсь, что это помогает!

Комментарии (12)

мой проект включать в себя Р.Ява.в начале ,р. макета.основной хорошую работу.Но,после добавления кода он не't работа,и ошибка компоновки Р..main может'т решены.что'то проблемы?

Посмотри на свой импорт. Шансы на то, что строка:

import android.R;

будет. Если это's в случае, удалить его, так что ваш проект позволит решить р не с Android по умолчанию ресурсы класса, но с одним автоматически из /РЭС/ папку.

Комментарии (5)

И еще одна вещь, которая может вызвать эту проблему:

Я установил новый АДТ (ст. 22). Он перестал создавать папки Гэнь, которая включает в себя R.java`. Было принято решение установить новый SDK для Android, создавать инструменты, с помощью Диспетчера SDK для Android.

Решение нашел здесь

Комментарии (7)

R.java - это файл, который плагинов Eclipse для Android создает при создания вашего приложения. R.java создается в графе "быт"и каталог. Этот файл генерируется из информации в "РЭС"и каталог. Если вы запустите выберите и"проекта" -> наша "Чистый..." на затмение меню, он будет удалить, а затем восстановить файл R.java.

Проблема с "Р не может быть решен" и происходит, когда вы изменить свой имя пакета в файл AndroidManifest.xml. Он использует свой Андроид имя пакета, чтобы создать подкаталог в "быт" и каталог, где он сохраняет файлR.java`.

Затмение может иметь проблемы с запуском, так как она смущает где файл R.java когда вы изменили пакет Android имя. Вы можете либо переименовать в подкаталог ген, чтобы соответствовать вашей новое имя пакета, или вы можете изменить имя пакета вернуться к старому имя. Сделать чистым, а затем изменить имя пакета на новое имя вы хотите. Это работает лучше всего, если вы остановите затмение пытаться строить при изменении имени пакета. В графе "проекта" меню снимите флажок, чтобы "построить автоматически" и также, когда на "Чистый..." в диалоге спрашивает, если она должна "и начать строить сразу на" снимите коробку, чтобы она не'т попробуйте построить это имя пакета. После того, как вы поменяли имя, которое вы можете превратить "и строить Автоматически" и снова.

Обратите внимание, что если ваш AndroidManifest.xml файл название пакета не совпадают ваше имя Java-пакета, затмение закончится автоматически добавлять на "импорт &ЛТ;вашего Android пакет имя&GT;.Р; с" линией во всех ваших.файлы Java что есть какие-либо ссылки на R. Если вы измените своеAndroidManifest.xml имя пакета, иногда Eclipse не обновлять все эти добавил импорт. Если это произойдет, используйте рефакторинга в Eclipse (<и>альт</КБД> + <и>сдвиг</роз> + <и>Р</КБД и GT;), чтобы изменить выражение import в одном из ваших Java-файлы имя пакета вашего нового AndroidManifest.xml. Лучше для этого пока у вас отключена "и построить автоматически и".

Комментарии (7)
Решение

То, что сказал Уилл, было правильным

R - это автоматически сгенерированный класс, который содержит константы, используемые для идентификации ваших >ресурсов. Если у вас нет файла R.java (это gen/eu.mauriziopz.gps/R.java в >Eclipse с 1.5 SDK), я бы рекомендовал закрыть и снова открыть проект или перейти в >Project > Build all (и выбрать "Build Automatically", как рекомендовал >Josef). Если это не сработает, попробуйте создать новый проект, если проблема повторится, >напишите здесь еще раз, и мы рассмотрим ее более подробно.

Но я обнаружил, что была еще одна проблема, которая вызвала первую. Инструменты в директории SDK не имели прав на выполнение, поэтому они как будто не существовали для Eclipse, поэтому он не собирал файл R.java.

Изменение разрешения и выбор "Build Automatically" решило проблему.

Комментарии (3)

R - это автоматически генерируемый класс, который содержит константы, используемые для идентификации ваших ресурсов. Если у вас нет файла R.java (это gen/eu.mauriziopz.gps/R.java в Eclipse с SDK 1.5), я бы рекомендовал закрыть и снова открыть ваш проект или перейти в Project > Build all (и выбрать "Build Automatically", как рекомендовал Josef). Если это не сработает, попробуйте создать новый проект, если проблема повторится, напишите здесь снова, и мы рассмотрим ее более подробно.

Комментарии (1)

Закройте все файлы, очистить проект, перезапустите Eclipse.

Комментарии (2)

Стоит проверить в AndroidManifest.xml`. Пакет атрибут `` имеет правильное значение.

То есть:

Комментарии (2)

Вместе с большие предложения в предыдущие ответы, убедитесь, что ваш целевой платформы Android устанавливается:

  1. Щелкните правой кнопкой мыши на ваш проект
  2. Выбрать Свойства
  3. Выбрать Андроид в левом меню
  4. Поставьте галочку напротив соответствующего проекта целевой сборки.
  5. Нажмите кнопку Применить и ОК

Редактировать: через год я нашла другую причину. У меня был .jpg изображения в папке Мои катры с таким же именем как .изображения png. Ссылок этот образ в мой код, наверное, перепутал программу, и это дало "и р не могут быть решены на" ошибка.

Комментарии (0)

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

Например, если ком.пример.приложение myappкорневое пространство имен для вашего пакета, то вы можете добавить занятие в Ариа.пример.приложение myapp.деятельности пространства имен.

Это позволит производить в "Р не может быть решен" и ошибка.

Исправить импортировать в пространство имен по умолчанию в вашей деятельности должно быть:

import com.example.myapp.R;
Комментарии (1)

Убедитесь, что вы установили инструмент построения формы Андроид СДК менеджер

проект правой кнопкой мыши Свойства-> выбора Java библиотека buildpath ПО и добавить android-support.jar за этим шагом.

Перейдите в проект->Свойства->По пути построения Java, чем выбрать заказ и вкладка "экспорт". Установить Android-поддержка .библиотека jar проверено и это в верхней части списка. И очистить и восстановить..это работает для большинства случаев

Комментарии (0)

Я просто имел эту проблему в сотый раз и поняла, что было причиной этого: я создал XML-файл с заглавными буквами в названии. Всех ваших XML-файлов в /Рес должны совпадать [а-З0-9\\._].

Комментарии (1)

Простейшее решение - иногда нужно просто сохранить XML-файл, который вы работали, чтобы получить автогенераторных удара.

Сохраните файл (напр. main.xml) затем удалить файл R.java и посмотреть, если регенерированный R.java устраняет проблему Р решимость.

Комментарии (3)

R - это генерируемый класс. Если вы используете Android Development Tools (ADT), он генерируется каждый раз при сборке проекта. Возможно, у вас выключена функция 'Build Automatically'.

Комментарии (0)

Проверьте имена XML-файл. Будьте уверены, что они'Снова все в нижнем регистре.

Также убедитесь, что все имена графический ресурс так же все в нижнем регистре. У меня Буквы в названии моего файла JPG, и это вызвало неустранимая ошибка Р прямо напротив моего проекта.

Комментарии (1)

Вам может потребоваться обновить/установить пакет SDK инструментов. Перезапустите диспетчер SDK для Android, снова и установите новый элемент: для Android SDK строй-инструменты.по одному удалить,исправить которые работают для вас.

Комментарии (0)

Эта ошибка всплыло на установке х64 Линукс Минт. Выяснилось, что в результате сбоя в АБР бинарные, потому что обновленный пакет ia32-библиотеки не был установлен. Просто команды `apt-получить установку ia32-библиотеки и перезапуска Eclipse Исправлена ошибка.

Если ваш дистрибутив x64 не имеет с архитектурой ia32-libs, вы'придется идти Мультиархитектурный.

Проверяем #4 и #5 на этот пост: http://crunchbang.org/forums/viewtopic.php?pid=277883#p277883

Надеюсь, что это помогает кто-то.

Комментарии (1)

Вам может потребоваться обновить инструменты SDK. Перезапустите диспетчер SDK для Android, снова и установите новый элемент: для Android SDK строй-инструменты.

Комментарии (0)