Ответ 1
Может ли любой проект библиотеки Android быть преобразован во внешний JAR?
Не сейчас.
Если нет, каковы ограничения или ограничения?
Если ваша библиотека является чисто Java-кодом, без ресурсов, вы можете создать JAR из файлов .class
, как и с обычной Java.
Если ваша библиотека использует ресурсы, вы все равно можете создать JAR, как указано выше. Однако вам нужно будет искать значения R
(например, R.layout.main
) через отражение или getIdentifier()
, а ваши ресурсы не будут упакованы в JAR, но их придется распределять отдельно.
В будущем инструменты построения должны поддерживать создание распределяемых JAR файлов из проектов библиотеки, в комплекте с ресурсами. Существующие инструменты сборки создают JAR, но они не предназначены для распространения, а являются скорее внутренними артефактами сборки на данный момент.