Создать jar android studio

Обновлено: 19.09.2024

Я сослался на несколько ссылок, чтобы узнать о процедуре создания проекта библиотеки Android, ни одна из них не объяснила полностью подробно. Я намерен создать проект библиотеки Android ( ex mathsolve.jar ) и распространить его как файл .jar, чтобы другие могли использовать его в своих приложениях для Android.

Может ли кто-нибудь подробно объяснить следующие шаги

а) Как создать проект библиотеки Android

б) Как экспортировать этот файл библиотеки Android как файл .jar

c) Шаги по интеграции этого файла .jar в другое приложение для Android.

d) И как вызвать метод этого файла .jar из этого приложения для Android.

Любое предложение мне очень поможет. Заранее спасибо.

«Как экспортировать этот файл библиотеки Android как файл .jar» - проект библиотеки Android создает AAR, а не JAR. «Действия по интеграции этого файла .jar в другое приложение для Android» - опубликуйте AAR в репозиторий в стиле Maven (например, в локальном репозитории на вашем компьютере разработки), затем попросите другое приложение использовать repositories <> и dependencies <> , чтобы ссылаться на него.

1 ответ

а) Как создать проект библиотеки Android

Шаг 01> В Android Studio перейдите в Файл -> Создать -> Новый модуль

Шаг 02> Выберите Android Library и нажмите кнопку «Далее».

Шаг 03> Выберите минимальный поддерживаемый SDK и нажмите «Готово».

Step 04> Будет добавлен новый модуль и дождаться синхронизации gradle. Теперь ваш файл библиотеки создан

б) Как экспортировать этот файл библиотеки Android как файл .jar

Step 01> После завершения этапа «а» вам нужно один раз построить проект, и все готово. Файл .aar будет создан по пути вашего приложения Android -> Папка модуля -> build -> output -> aar -> module-release.aar

Step 02> Вам просто нужно скопировать этот module-release.aar и распространить его где угодно.

c) Действия по интеграции этого файла .jar в другое приложение для Android .

Step 01> Здесь тип библиотеки в формате .aar. Шаги одинаковы для файлов .jar и .aar. В Android Studio перейдите в Файл -> Новый -> Новый модуль.

Шаг 02> В этом окне нового модуля выберите «импортировать пакет .JAR / .AAR» и нажмите кнопку «Далее».

Step 03> Откроется новое окно обозревателя файлов. Здесь, в разделе «Имя файла», выберите просмотр файлов, откройте файл module-release.aar и нажмите «Готово».

Шаг 04> После успешной сборки скопируйте следующий оператор компиляции в «файл градиента модуля приложения»

Шаг 05> Синхронизируйте файл Gradle.

Step 06> Если есть, скопируйте все разрешения, предоставленные файлу библиотеки, в файл App Manifest.xml. Это все, что ты сделал

г) И как вызвать метод этого файла .jar из этого приложения для Android

Step 01> В вашем модуле вам нужно определить общедоступный метод, который может быть доступен по имени класса. Например

Наша жизнь в качестве разработчиков Android была бы намного сложнее, если бы не все эти сторонние библиотеки, которые мы хотели бы включить в наши проекты. В этом уроке вы узнаете, как проникнуть в сообщество разработчиков, создавая и публикуя свои собственные библиотеки Android, которые люди могут легко добавлять и использовать в своих проектах.

1. Создание библиотеки Android

Если ваша библиотека будет состоять только из классов Java, упаковка их как JAR и распространение ее с использованием хостинга файлов, возможно, самый быстрый и простой способ поделиться ею. Если вам нужно было создать ее из консоли, достаточно было бы выполнить следующую команду:

Однако этот учебник показывает, как работать с более сложными библиотеками, которые содержат не только классы Java, но также различные типы файлов и ресурсов XML. Такие библиотеки создаются как модули библиотеки Android и обычно упаковываются как файлы AAR.

Давайте создадим простую библиотеку Android, которая предлагает пользовательский View для разработчиков, которые его используют.

Шаг 1: добавьте новый модуль

Для начала добавьте в проект новый модуль Android, выбрав Новый> Новый модуль в меню Файл. Вам будет показан следующий экран, который предлагает множество вариантов:

New module dialog
New module dialog
New module dialog

Выберите Библиотека Android и нажмите Далее. В следующей форме введите имя своей библиотеки и нажмите Далее. Я буду называть эту библиотеку mylittlelibrary.

На последнем экране выберите Не добавлять активность и нажмите Готово.

Теперь у вашего проекта будет два модуля: один для приложения и один для библиотеки. Вот как выглядит его структура:

Structure of project
Structure of project
Structure of project

Шаг 2. Создание макета.

Создайте новый формат XML, щелкнув правой кнопкой мыши папку res вашего библиотечного модуля и выбрав New> XML> Layout XML File. Назовите его my_view.xml.

Чтобы этот учебник был простым, мы создадим пользовательский View , в котором есть два виджета TextView внутри LinearLayout . После добавления некоторого текста в виджеты TextView XML-файл макета должен выглядеть так:

Шаг 3. Создание класса Java

Создайте новый класс Java и назовите его MyView.java. Обязательно поместите этот файл в каталог src библиотечного модуля, а не в модуль приложения.

Чтобы этот класс работал как View , сделайте его подклассом класса LinearLayout . Android Studio предложит добавить в класс несколько конструкторов. После их добавления новый класс должен выглядеть следующим образом:

Как вы можете видеть, теперь у нас есть два конструктора. Чтобы избежать добавления кода инициализации для каждого конструктора, вызовите метод с именем initialize из каждого конструктора. Добавьте следующий код к каждому конструктору:

В методе initialize вызовите inflate , чтобы связать макет, который мы создали на предыдущем шаге с классом.

2. Использование библиотеки локально

Теперь, когда библиотека готова, давайте воспользуемся ею в модуле app того же проекта, чтобы убедиться, что проблем нет. Для этого добавьте ее как compile зависимость в файле build.gradle модуля app:

Создайте новый класс Java MainActivity внутри модуля приложения. Сделайте его подклассом класса Activity и переопределите его метод onCreate .

Внутри метода onCreate создайте экземпляр пользовательского представления, используя его конструктор. Передайте его методу setContentView , чтобы он заполнил все пространство экрана Activity :

Теперь ваша Activity готова. Добавив его в манифест приложения, создайте проект и разверните приложение на устройстве Android. После запуска приложения вы сможете увидеть пользовательский вид.

3. Публикация вашей библиотеки на Bintray

Bintray - популярная платформа, которую вы можете использовать для публикации Android-библиотек. Она бесплатная и простая в использовании.

Начните с создания учетной записи на Bintray. После входа в свою учетную запись вы увидите, что у вас уже есть шесть репозиториев. Вы можете использовать один из них или создать новый репозиторий. Для этого урока я буду использовать репозиторий, называемый maven, который является репозиторием Maven.

Homepage
Homepage
Homepage

Перейдите на страницу своего профиля и нажмите кнопку Изменить. На следующей странице щелкните ссылку API Key, чтобы просмотреть свой ключ API.

API Key
API Key
API Key

Запомните ключ, потому что вам понадобится его аутентификация при использовании плагина Bintray.

Шаг 1: добавьте необходимые плагины

Чтобы взаимодействовать с Bintray в Android Studio, вы должны включить плагин Bintray в dependencies файла build.gradle вашего проекта.

Поскольку вы загружаете библиотеку в репозиторий Maven, вы также должны добавить плагин Maven, как показано ниже.

Шаг 2: Примените плагины

Откройте файл build.gradle вашего библиотечного модуля и добавьте следующий код, чтобы применить плагины, добавленные нами на предыдущем шаге.

Шаг 3: укажите детали POM

Плагин Bintray будет искать файл POM при загрузке библиотеки. Несмотря на то, что плагин Maven генерирует его для вас, вы должны указать значение тега groupId и значение тега version самостоятельно. Для этого используйте переменные group и version в вашем файле gradle.

Если вы знакомы с Maven, и вам интересно, почему мы не указали значение тега artifactId , это потому, что плагин Maven по умолчанию использует имя вашей библиотеки как artifactId .

Шаг 4: Создание JAR исходников

Чтобы соответствовать стандартам Maven, ваша библиотека также должна иметь JAR-файл, содержащий исходные файлы библиотеки. Чтобы сгенерировать JAR-файл, создайте новую задачу Jar , generateSourcesJar и укажите местоположение исходных файлов, используя функцию from .

Шаг 5: Создание JAR Javadoc JAR

Также рекомендуется, чтобы ваша библиотека имела JAR-файл, содержащий его Javadocs. Поскольку в настоящее время у вас нет Javadocs, создайте новую задачу Javadoc , generateJavadocs, чтобы сгенерировать их. Используйте переменную source , чтобы указать расположение исходных файлов. Вы также должны обновить переменную classpath , чтобы задача могла находить классы, принадлежащие Android SDK. Вы можете сделать это, добавив к нему возвращаемое значение метода android.getBootClasspath .

Затем, чтобы создать JAR из Javadocs, создайте задачу Jar , generateJavadocsJar и передайте свойство destinationDir для generateJavaDocs в его функцию from. Ваша новая задача должна выглядеть так:

Чтобы задача generateJavadocsJar запускалась только после завершения задачи generateJavadocs , добавьте следующий фрагмент кода, который использует метод dependOn для порядка задач:

Шаг 6: Включите сгенерированные файлы JAR

Чтобы включить исходные файлы JAR и Javadoc в список артефактов, которые будут загружены в репозиторий Maven, вы должны добавить имена своих задач в configuration с именем archives. Для этого используйте следующий фрагмент кода:

Шаг 7: Запуск задач

Настало время запустить задачи, которые мы создали на предыдущих шагах. Откройте окно Gradle Projects и найдите задачу с именем install.

Install task
Install task
Install task

Дважды щелкните его, чтобы выполнить задачи, связанные с библиотечным модулем. По завершении работы у вас будет все, что вам нужно, чтобы опубликовать вашу библиотеку, действительный файл POM, файл AAR, источник JAR и JAR Javadocs.

Шаг 8: Настройте плагин Bintray

Чтобы настроить плагин, вы должны использовать замыкание bintray в файле Gradle. Сначала выполните аутентификацию с использованием переменных user и key , соответствующих вашему имени пользователя Bintray и API-интерфейсу соответственно.

В Bintray ваша библиотека будет находиться внутри пакета Bintray. Вы должны предоставить подробную информацию об этом, используя интуитивно названные параметры repo , name , licenses , и vcsUrl для замыкания pkg . Если пакет не существует, он будет для вас автоматически создан.

Когда вы загружаете файлы в Bintray, они будут связаны с версией пакета Bintray. Следовательно, pkg должен содержать замыкание version , для свойства name которого задано уникальное имя. Кроме того, вы также можете предоставить описание, дату выпуска и тег Git с использованием параметров desc , release и vcsTag .

Наконец, чтобы указать файлы, которые должны быть загружены, установите значение параметра configuration в archives.

Это пример конфигурации:

Шаг 9: Загрузка файлов с помощью плагина Bintray

Откройте окно Gradle Projects снова и найдите задачу bintrayUpload. Дважды щелкните его, чтобы начать загрузку файлов.

Bintray upload
Bintray upload
Bintray upload

По завершении задачи откройте браузер, чтобы открыть страницу с информацией о пакете Bintray. Вы увидите уведомление, в котором говорится, что у вас есть четыре неопубликованных файла. Чтобы опубликовать эти файлы, нажмите ссылку Опубликовать.

Notification about unpublished files
Notification about unpublished files
Notification about unpublished files

4. Использование библиотеки из Bintray

Ваша библиотека теперь доступна как пакет Bintray. После того, как вы поделитесь URL-адресом своего репозитория Maven, вместе с идентификатором группы, идентификатором артефакта и номером версии, любой разработчик может получить доступ к вашей библиотеке. Например, чтобы использовать созданную библиотеку, разработчикам пришлось бы включить следующий фрагмент кода:

Обратите внимание, что разработчик должен явно включать ваш репозиторий в список repositories , прежде чем добавлять библиотеку в качестве compile зависимости.

5. Добавление библиотеки в JCenter

По умолчанию Android Studio ищет библиотеки в репозитории JCenter. Если вы включите свою библиотеку в репозиторий JCenter, разработчикам не нужно будет добавлять что-либо в свой список repositories .

JCenter button
JCenter button
JCenter button

Compose message page
Compose message page
Compose message page

Link to JCenter
Link to JCenter
Link to JCenter

Любой разработчик теперь может использовать вашу библиотеку, не меняя список repositories .

Заключение

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

Чтобы узнать больше о Bintray, посетите руководство пользователя Bintray.

Мне нужно создать библиотеку, которую я собираюсь экспортировать клиенту в файл jar. Есть ли способ создать банку с ресурсами в ней?

У Google adMob есть такая банка, которая включает в себя файл ресурсов, такой как R$layout.класс в нем. на этой странице описывает какой-то способ сделать это, но я не могу точно понять, как я должен импортировать проект библиотеки в приложение, используя метод выше.

  1. сделайте свой проект библиотеки обычным проектом, сняв флажок IsLibrary.
  2. выполните свой проект в качестве приложения для Android. (Он не будет показывать никаких ошибок)
  3. вы найдете .jar-файл в папке bin вместе с ним .АПК.
  4. дам тебе .банки, которые хотят использовать вашу библиотеку.
  5. скажите им, чтобы просто импортировать внешнюю банку в путь сборки.
  1. создать проект библиотеки. Очистить его. Вы получите libraryProjectName.jar-файл внутри папки bin. (Убедитесь, что "библиотека" и избранные в проект библиотеки.
  2. скопировать .jar-файл в libs
  1. создать проект библиотеки
  2. создать пустой проект
  3. Добавить проект библиотеки в пустой проект
  4. строительство
  5. в папке /gen вы найдете класс для вашего проекта библиотеки, это будет содержать ваши ресурсы для проекта lib.
  6. экспорт JAR (выберите только этот класс . с /папка-го поколения)
  7. экспорт JAR из вашего проекта lib
  8. переименование экспортируемых файлов для zip и слияния содержимого
  9. переименуйте конечный файл в JAR и добавьте его в проект.

вот простой способ сделать это с ant, нашел это в исходном коде Volley. Добавьте приведенный ниже код в custom_rules.xml затем построить с ant jar

согласно последней версии Android Studio v1.2, это так же просто, как иметь торт. Уже ответил полное решение со скриншотами на этой ссылке

с Eclipse ADT v22.6.2 Вы можете просто экспортировать jar, нажав File->Export->Java->Jar File, выберите каталоги и место назначения для сохранения.


Следуйте за нами на нашей фан-странице, чтобы получать уведомления каждый раз, когда появляются новые статьи. Facebook

1- The ways to use external libraries

Вы разрабатываете приложение Android на Android Studio, иногда вы хотите использовать внешнюю библиотека для своего project, например файл jar.


Common Langs это библиотека java с открытым исходным кодом предоставленный Apache, имеет утилиты для работы с String, числами, concurrency .

Например вы хотите использовать эту библиотеку для вашего project Android. И использовать один из методов для проверки является ли текст числом или нет.

In this document I will guide you 3 ways to use the external library:

  1. Добавить ваш файл jar в папку libs в project и объявить его как библиотеку для использования.
  2. Создать Android Module и копировать ваш файл jar в этот module, потом объявить ваш project использует только что созданный module.
  3. Объявить и использовать удаленную библиотеку.

2- Way 1 - Copy external library to libs folder




Копировать файл jar и вставить в папку libs:



Нажмите на правую мышь на файл jar, выберите "Add as Library..":



Вернитесь к Tab "Android", вы увидите что ваша библиотека объявлена в build.grade (Module: app)


3- Way 2 - Using the module library

Например у вас есть project AddLibsDemo2, и вы хотите использовать common-lang3-3.4.jar для этого project.






Далее вам нужно объявить зависимость главного project от только что созданного Module.






Вы можете проверить ваш Module который был объявлен в build.grade (Module: app).


4- Way 3 - Using remote library

Android Studio может использовать библиотеку в сети, она находится в каком-то репозитории (repository) в Интернете. Например у вас есть project AddLibDemo3, и вам нужно добавить библиотеки в сети в ваш project.

Читайте также: