После настройки поддержки android-support-v7-appcompat отсутствует R.java

Я пытаюсь изменить проект Eclipse, чтобы сделать его обратно совместимым с Android 2.1. Я выполнил инструкции по созданию Библиотеки поддержки из здесь, но после того, как я приложил проект библиотеки к моему проекту, R.java из каталога gen исчез.

Плюс я получил некоторые ошибки в консоли, например:

[2013-09-02 00:08:26 - gitarshopAndroidClient] /usr/local/external/android-sdk-linux/extras/android/support/v7/appcompat/res/values-v14/styles_base.xml:24: error: Error retrieving parent for item: No resource found that matches the given name 'android:Widget.Holo.ActionBar'.
[2013-09-02 00:08:26 - gitarshopAndroidClient] /usr/local/external/android-sdk-linux/extras/android/support/v7/appcompat/res/values-v14/styles_base.xml:28: error: Error retrieving parent for item: No resource found that matches the given name 'android:Widget.Holo.Light.ActionBar'.
[2013-09-02 00:08:26 - gitarshopAndroidClient] /usr/local/external/android-sdk-linux/extras/android/support/v7/appcompat/res/values-v14/styles_base.xml:32: error: Error retrieving parent for item: No resource found that matches the given name 'android:Widget.Holo.ActionBar.Solid'.

Любая идея?

Ответ 1

Хорошо, я понял, в чем проблема.

Целью сборки моего проекта был Android 2.1 (API 7). Я должен был нацелить Android 4.0 (API 14), по крайней мере, чтобы избавиться от предупреждающего сообщения.

ВАШЕ ПРИЛОЖЕНИЕ БУДЕТ ПРОДОЛЖИТЬ НА Android 2.1 УСТРОЙСТВА! Это то, что я пропустил, когда неправильно настроил цель.

Ответ 2

Нажмите в своем проекте, выберите свойства, выберите Andoid и сделайте то же самое с библиотекой, чтобы убедиться, что оба имеют один и тот же объект сборки проекта. Не прикасайтесь к манифесту sdk, так как это приведет к ошибке при обновлении

Ответ 3

Что сработало для меня, нужно сделать следующее:

  • Щелкните правой кнопкой мыши по проекту android-support-v7-appcompat и выберите Удалить (просто удалите его из рабочей области, не удаляйте с диска).

  • Щелкните правой кнопкой мыши свой проект и выберите "Свойства" → Android и удалите android-support-v7-appcompat из своих ссылок и нажмите "ОК".

  • Очистите проект

  • Затем выберите "Файл" → "Импорт и повторный импорт" android-support-v7-appcompat.

  • Затем вернитесь в Properties → Android и снова добавьте ссылку.

  • Очистите проект

Ответ 4

Я как бы новичок в разработке Android, но нашел это решение:

  • Если вы хотите совместимость, сначала убедитесь, что вы создали свой проект с помощью MinimunRequiredSDK, TargetSDK и CompileWith, установленных в API7: Android 2.1 (Eclair) в окне "Новое приложение Android" Eclipse.

    /li >
  • Создайте проект поддержки библиотеки android-support-v7-appcompat в соответствии с руководством, предоставленным разработчиками .android.com(http://developer.android.com/tools/support-library/setup.html#using-apis)

  • Добавьте библиотеку поддержки в свой проект (щелкните правой кнопкой мыши по вашему проекту, свойствам и Android в библиотечном фрейме). Обратите внимание, что файл R.java отсутствует.

  • Перейдите в файл проекта project.properties и измените свойство target to the Google Inc.: API Google: 14. НЕ изменяйте этот атрибут в файле AndroidManifest.xml.

  • Очистите проект. Ошибки исчезли.

  • Запустите проект.

  • Если вы не используете свое приложение на реальном устройстве, вам всегда будет предложено выбрать совместимое устройство. Выберите тот, который запускает Android 2.1 и наслаждайтесь.

OBS: Из-за этого обходного пути, раздражающее сообщение "Нет совместимых целей были найдены", всегда будет отображаться, если вы работаете с виртуальным устройством. Вы можете ответить "НЕТ" и выбрать устройство в окне "Выбор устройства Android". Очень рекомендуется выбрать тот, который работает под управлением Android 2.1

Ответ 5

Просто нажмите Проект > Android > Исправить свойства проекта.

Он работал над Eclipse Kepler и последней версией ADB!

Ответ 6

вам нужно добавить jar (support v7) в папку libs проекта поддержки v7 в вашем проекте и добавить версию поддержки 7 в качестве проекта библиотеки в ваш проект

Ответ 7

вы должны удалить android-support-v4.jar из частных библиотек Android потому что он уже находится в android-support-v7-appcompat