После настройки поддержки 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