Мне известны проекты библиотеки Android, которые позволяют вам создавать проекты с общим исходным кодом, которые можно при необходимости включать в приложения Android. Однако для этого требуется, чтобы источник был доступен.
Я ищу способ создания и распространения библиотеки с закрытым исходным кодом, которая может быть использована в других проектах Android, таких как традиционный JAR. Это потребует использования компилятора Android, так что это не файл JAR vanilla-Java. FWIW, мне не нужно вставлять ресурсы / макеты в JAR.
Я видел http://andparcel.com/, но это похоже на обходной путь, и я бы предпочел использовать что-то «официально поддерживаемое» Google. Кроме того, мне нужно убедиться, что создаваемый JAR-файл совместим со старой / новой версией Android SDK (т. Е. Мне нужен способ установить версию целевой платформы и т. Д.).
Последние наборы инструментов Android позволяют создавать / использовать двоичные файлы JAR? Можете ли вы указать некоторые документы о том, как я могу это сделать?
Ответы:
Если вы создаете проект библиотеки Android без каких-либо ресурсов, ADT (впервые замеченный в r16) создаст файл .jar с тем же именем, что и у проекта, в папке «bin».
источник
myapp.jar
в/bin
папке. Естьclasses.jar
, но это не так, верно?Android не предоставляет специальный вид Android-JAR. Но то, что вы можете сделать, это добавить build.xml в ваш проект и собрать JAR с помощью ant.
Мой build.xml выглядит так:
Создайте JAR, запустив
ant jar
в главной папке ваших проектов.источник
bin/classes
, так что<jar destfile="MyAndroidLib.jar" basedir="bin/">
должно быть<jar destfile="MyAndroidLib.jar" basedir="bin/classes/">
Вы можете создать «обычный» Java-проект и импортировать оттуда Android.jar. Затем у вас будет доступ ко всем компонентам в SDK. Затем вы можете экспортировать свой проект как jar ... и загрузить его из вашего приложения для Android. Это прекрасно работает, и кажется, что это довольно простой способ сделать это.
источник
Просто зайдите в свойства проекта, из которого вы хотите сделать jar. Нажмите на вкладку Android. и отметьте галочкой в библиотеке Is. Теперь вы можете увидеть файл .jar в папке bin. Используйте его там, где вы хотите использовать.
источник
Единственное решение, «официально поддерживаемое» Google, - это проект библиотеки, который требует распространения исходного кода. Вы можете создать JAR обычным способом, но вы не можете включать или ссылаться на ресурсы внутри него.
К сожалению, я думаю, что также невозможно включить упакованный JAR в проект библиотеки, чтобы обойти требование исходного кода.
источник
В последней сборке Android Studio 1.2 создание библиотеки JAR было сделано просто и просто.
Шаги, чтобы следовать:
Следующий шаг - добавление библиотеки Jar в качестве зависимости в вашем приложении. Просто так просто
.... Или вы можете просто добавить приведенную ниже строку в файл приложения Gradle
Google продвигает Android Archive (AAR), даже несмотря на то, что поддерживаемый JAR возвращается в Android Studio. Чтобы узнать разницу между AAR и JAR, воспользуйтесь этой ссылкой
источник
Попробуйте это: это работает
1) Сделайте ваш проект библиотеки обычным, сняв флажок IsLibrary.
2) Выполните ваш проект как приложение для Android. (Это не покажет никакой ошибки)
3) вы найдете файл .jar в папке bin вместе с .apk.
4) Дайте вам .jar, кто хочет использовать вашу библиотеку.
5) Скажите им просто импортировать внешний jar-файл в путь сборки.
это будет хорошо работать со всеми ресурсами. удачи.
источник
ADT создает папку bin, которая содержит все файлы классов для всех соответствующих исходных файлов и каталогов в вашем проекте. Вы можете использовать команду jar, создать архив jar, содержащий эти файлы и каталоги классов и предположительно вашу библиотеку, но, конечно, файлы платформы уровня класса будут предназначены только для текущего уровня сборки проекта - вам понадобится отдельный файл jar для каждого уровня платформы; Однако самое замечательное в этом то, что файл R.class включен в дерево каталогов проекта, и поэтому у вас есть доступ к его ресурсам. Я не знаю, если это официальный способ сделать вещи в Android, но это сработало для меня.
источник
В нашем проекте мы создаем apk (используя apkbuilder), который устанавливается в / system / framework и добавляем этот apk в classpath по умолчанию. Для компиляции приложений, использующих jar, мы создаем файл jar (используя jar c).
Примечание: у нас нет ресурсов в библиотеке.
источник
.jar - это просто файл .zip, который содержит файл .class (вы можете попробовать изменить расширение любого файла .jar на .zip, а затем посмотреть результат). Вы можете легко создать любую библиотеку .jar для любых целей, заархивировав файл .class.
источник
Шаги:
1) Открыть файл project.properties
2) Добавить ценность
android.library=true
3) Сохранить файл
4) В меню затмения для проекта, выберите сборку автоматически, затем выберите очистить
Результат: новая корзина создана под мусорным баком .
источник