R отсутствует после создания проекта Android из существующего источника

Я загрузил источник для SpriteMethodTest, и я хочу его создать в Eclipse. Итак, я пошел:

Файл → Новый → Проект Android → Создать проект из существующего источника → SpriteMethodTest

Он создал проект в порядке, но класс R не генерируется. Любой файл, который ссылается на ресурс в R, говорит R cannot be resolved.

Импортирование android.R приводит только к R.drawable.background cannot be resolved. Как мне снова создать R?

Ответ 1

У вас проблема, потому что вы импортируете Androids R, а не ваш проект R. Просто удалите import android.R;, затем наведите указатель мыши на ссылку на R, которая дает R cannot be resolved to a variable. Оттуда у вас будет возможно несколько различных вариантов, по которым R импортируется. Вы хотите импортировать R, который находится в вашем пакете.

Ответ 2

  • Создайте пустой файл внутри папки "gen" и назовите его "R.java"
  • щелкните Project → Clean...
  • нажмите Инструменты Android → Исправить проект...

Ответ 3

Сгенерированный файл ресурсов R может генерироваться только eclipse, если файлы, которые он читает, могут компилироваться, то есть ошибки в файле (например, файл манифеста) предотвращают компиляцию. Итак, сначала устраните свои ошибки (перечисленные на вкладке "Проблемы" ), затем сохраните изменения и затем должны быть сгенерированы.

Причина, по которой это обычно связано с версиями API, заключается в том, что разные версии вызывают ошибки совместимости. Обычно это происходит, когда люди захватывают пример кода и не устанавливают ту же версию API, что и создатель кода. Изменение правильной версии устраняет ошибки и позволяет создавать R файл.

Ответ 4

У меня была такая же проблема с SpriteMethodTest. Он не имеет ничего общего с именами пакетов или импортом. Как говорит tarkeshwar, если R не генерируется, то проблема перед компиляцией. В этом случае это AndroidManifest.xml.

Последний тег в манифесте

<uses-sdk android:minSdkVersion="3" android:targetSdkVersion="4"/>

но android:targetSdkVersion не поддерживается. Измените строку на

<uses-sdk android:minSdkVersion="3"/>

и это должно позволить Eclipse генерировать класс R.

Ответ 5

Была аналогичная проблема, которая, как представляется, была вызвана версиями SDK:

  • Project → properties → android: выберите подходящий API lvl и нажмите OK. Это заставило R-класс, наконец, сгенерироваться, как бы он еще не компилировался.
  • Удалить проект и снова импортировать его (теперь он имеет класс R) и работал с первой попытки.

* Случалось, когда пытались проверить код примера змеи.

Ответ 6

В моей среде Android SDK отсутствовали инструменты платформы для папок, и мне пришлось запустить Android и установить платформенные инструменты. Теперь он работает.

Ответ 7

Проект → Очистить (выберите проект) → Ok

Это приведет к повторной сборке, и пока проект будет настроен как проект Android, R.java будет восстановлен.

Ответ 8

Попробуйте следующее:

  • Удалить папку gen
  • Project = > clean
  • Щелкните правой кнопкой мыши = > Android Tools = > Исправить свойства проекта
  • Щелкните правой кнопкой мыши = > Запустить как... = > Android-приложение

Ответ 9

R.java не генерируется, как правило, указывает на проблемы в другом месте, например: Manifest.xml с ошибками.

Исправить эти ошибки и перестроить. Тогда R.java должен быть сгенерирован.

Если, если он еще не существует, выполните настройки проекта → android → . android.

Ответ 10

Запуск этого в папке проекта исправил его для меня

 android update project -p .

У меня была "Build automatically" отключена, когда я создал новый проект, поэтому определенные файлы не были созданы, как будто они должны были быть