Создать 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, выбрав Новый> Новый модуль в меню Файл. Вам будет показан следующий экран, который предлагает множество вариантов:
Выберите Библиотека Android и нажмите Далее. В следующей форме введите имя своей библиотеки и нажмите Далее. Я буду называть эту библиотеку mylittlelibrary.
На последнем экране выберите Не добавлять активность и нажмите Готово.
Теперь у вашего проекта будет два модуля: один для приложения и один для библиотеки. Вот как выглядит его структура:
Шаг 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.
Перейдите на страницу своего профиля и нажмите кнопку Изменить. На следующей странице щелкните ссылку API Key, чтобы просмотреть свой ключ API.
Запомните ключ, потому что вам понадобится его аутентификация при использовании плагина 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.
Дважды щелкните его, чтобы выполнить задачи, связанные с библиотечным модулем. По завершении работы у вас будет все, что вам нужно, чтобы опубликовать вашу библиотеку, действительный файл 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. Вы увидите уведомление, в котором говорится, что у вас есть четыре неопубликованных файла. Чтобы опубликовать эти файлы, нажмите ссылку Опубликовать.
4. Использование библиотеки из Bintray
Ваша библиотека теперь доступна как пакет Bintray. После того, как вы поделитесь URL-адресом своего репозитория Maven, вместе с идентификатором группы, идентификатором артефакта и номером версии, любой разработчик может получить доступ к вашей библиотеке. Например, чтобы использовать созданную библиотеку, разработчикам пришлось бы включить следующий фрагмент кода:
Обратите внимание, что разработчик должен явно включать ваш репозиторий в список repositories , прежде чем добавлять библиотеку в качестве compile зависимости.
5. Добавление библиотеки в JCenter
По умолчанию Android Studio ищет библиотеки в репозитории JCenter. Если вы включите свою библиотеку в репозиторий JCenter, разработчикам не нужно будет добавлять что-либо в свой список repositories .
Любой разработчик теперь может использовать вашу библиотеку, не меняя список repositories .
Заключение
В этом уроке вы узнали, как создать простой модуль библиотеки Android и опубликовать его как в своем собственном репозитории Maven, так и в репозитории JCenter. По пути вы также научились создавать и выполнять различные типы задач gradle.
Чтобы узнать больше о Bintray, посетите руководство пользователя Bintray.
Мне нужно создать библиотеку, которую я собираюсь экспортировать клиенту в файл jar. Есть ли способ создать банку с ресурсами в ней?
У Google adMob есть такая банка, которая включает в себя файл ресурсов, такой как R$layout.класс в нем. на этой странице описывает какой-то способ сделать это, но я не могу точно понять, как я должен импортировать проект библиотеки в приложение, используя метод выше.
- сделайте свой проект библиотеки обычным проектом, сняв флажок IsLibrary.
- выполните свой проект в качестве приложения для Android. (Он не будет показывать никаких ошибок)
- вы найдете .jar-файл в папке bin вместе с ним .АПК.
- дам тебе .банки, которые хотят использовать вашу библиотеку.
- скажите им, чтобы просто импортировать внешнюю банку в путь сборки.
- создать проект библиотеки. Очистить его. Вы получите libraryProjectName.jar-файл внутри папки bin. (Убедитесь, что "библиотека" и избранные в проект библиотеки.
- скопировать .jar-файл в libs
- создать проект библиотеки
- создать пустой проект
- Добавить проект библиотеки в пустой проект
- строительство
- в папке /gen вы найдете класс для вашего проекта библиотеки, это будет содержать ваши ресурсы для проекта lib.
- экспорт JAR (выберите только этот класс . с /папка-го поколения)
- экспорт JAR из вашего проекта lib
- переименование экспортируемых файлов для zip и слияния содержимого
- переименуйте конечный файл в JAR и добавьте его в проект.
вот простой способ сделать это с ant, нашел это в исходном коде Volley. Добавьте приведенный ниже код в custom_rules.xml затем построить с ant jar
согласно последней версии Android Studio v1.2, это так же просто, как иметь торт. Уже ответил полное решение со скриншотами на этой ссылке
с Eclipse ADT v22.6.2 Вы можете просто экспортировать jar, нажав File->Export->Java->Jar File, выберите каталоги и место назначения для сохранения.
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:
- Добавить ваш файл jar в папку libs в project и объявить его как библиотеку для использования.
- Создать Android Module и копировать ваш файл jar в этот module, потом объявить ваш project использует только что созданный module.
- Объявить и использовать удаленную библиотеку.
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.
Читайте также: