Как создать библиотеку Java-кода для Android? - PullRequest
2 голосов
/ 22 февраля 2011

У меня есть несколько конструкций Android, таких как настраиваемые диалоговые окна, реализации перетаскивания и другие стандартные классы, которые я использую в нескольких проектах.Представляется неэффективным и плохой практикой помещать копии каждой конструкции (каждая со своим набором ресурсов и классов для обслуживания) в каждый проект.Теперь, если я найду в них ошибку, мне придется ее везде менять.

Хорошая практика требует, чтобы я включил ее в отдельный проект, возможно, в библиотеку jar, которую могут импортировать другие мои проекты.Это хорошо работает для конструкций, которые являются чисто java-классами, но с некоторыми из этих вещей связаны ресурсы android, и я не знаю, есть ли способ включить их в jar способом, который распознает компилятор ресурсов android.

Можно ли даже создать банку с включенными ресурсами Android (т.е. настраиваемое диалоговое окно с настраиваемым фоном для рисования или что-то в этом роде)?Если это возможно, то как?

Ответы [ 2 ]

3 голосов
/ 22 февраля 2011

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

0 голосов
/ 11 октября 2012

Вы не можете включать какие-либо ресурсы или XML в ваш JAR. Jar может содержать только файлы .class. Таким образом, абсурдная практика состоит в том, чтобы упаковать вашу флягу с вашими ресурсами и XML в более высокий метод упаковки, такой как .zip или .rar. Но это слишком громоздко для пользователей. Наилучший из возможных способов распространения, который я вижу, - это создать проект библиотеки, как указано в ссылке, предоставленной FrVaBe выше, и распространять его в виде открытого кода. Пользователям библиотеки потребуется открыть этот проект библиотеки во время компиляции .apk для своего проекта, использующего библиотеку, чтобы необходимые ресурсы и файлы были упакованы вместе с .apk ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...