Папка активов библиотеки Android не копируется

Я создаю библиотеку Android, и у нее есть папка с изображениями. Когда я использую его в другом проекте, активы не копируются.

У кого-нибудь еще была эта проблема?

Solutions Collecting From Web of "Папка активов библиотеки Android не копируется"

Новая система Android Build , основанная на Gradle, поддерживает папки с ресурсами в библиотечных проектах!

С сборками на основе ANT это все еще невозможно:

Библиотечные проекты не могут включать в себя необработанные активы. (См. Документы )

Но вы могли бы

Можно поместить активы в итоговую библиотечную банку с помощью небольшого исправления:
Поместите « custom_rules.xml » в ваш проект проекта библиотеки (рядом с build.xml):

 <?xml version="1.0" encoding="UTF-8"?> <project name="custom_rules"> <target name="-post-compile" if="${project.is.library}"> <echo>Post Compile: add assests from ${asset.absolute.dir} to ${out.library.jar.file}</echo> <jar destfile="${out.library.jar.file}" update="true"> <zipfileset dir="${asset.absolute.dir}" prefix="assets" excludes="**/*.java ${android.package.excludes}"/> </jar> </target> 

Это упакует ваши библиотечные активы в вашу библиотечную банку. В результате эти активы будут включены в итоговый файл .apk вашего приложения.

Проверено на Android SDK Tools Revision 21.1.0 на OSX

Из Eclipse и ANT вы можете ссылаться на одну и ту же папку «активы» из нескольких проектов. Это позволяет исходному дереву иметь одну копию файлов активов, но включить их в несколько APK.

См. Android: целевые папки res для отладки в eclipse

Из ProjectA я смог ссылаться .. \ ProjectA \ Assets из ProjectB. На Eclipse (по крайней мере, по Windows, я еще не пробовал Linux), мне пришлось создать новую переменную для ссылки .. \ ProjectA и использовать эту переменную в «Linked Folder Location». Если я попытался использовать «..» в «Location Linked Folder Location», то eclipse не согласился бы с этим.

Для тех, кто использует IntelliJ IDEA , вы можете внести изменения в настройки упаковки вашего модуля приложения, чтобы включить в него активы депонента. Обратите внимание, что это было сделано в версии 14.0.2 издания IntelliJ Community. Мой основной модуль приложения теперь наследует файлы из папки ресурсов моего библиотечного проекта, как если бы они были правы в главном проекте!

Щелкните правой кнопкой мыши модуль приложения> Открыть модуль. Выберите узел дерева Android в модуле> вкладка «Упаковка». Проверьте «Включить активы из зависимостей в APK»

Примечание. Я никогда не пользовался Android Studio, но я бы предположил, что в этом приложении есть аналогичные настройки.

Введите описание изображения здесь

Введите описание изображения здесь

Начать с создания проекта андроида lib, закрыть после создания. Это приведет к отключению автообмена

Использовать cmd-терминал в Windows команда android – пакетный файл

Добавить инструменты в путь C: \ Users \ user_bss> PATH =% PATH%; C: \ adt-bundle-windows-x86-20140321 \ sdk \ tools

Создайте build.xml для проекта обновления ant android -p C: \ Users \ user_bss \ Documents \ Workspace \ SDKAdvanced -n SDKAdvanced

Notepad custom_rules.xml добавить код сверху не забывайте конечный тег

Запустить «ant debug» или «ant release» для сборки

Вы увидите class.jar в bin dir, это ваш упакованный lib