Разница между модулем, библиотеками, jar, библиотечными проектами, gradle-проектами, aar и jar

Я работаю в компании, которая имеет мобильное приложение для Android, разработанное оффшорной командой. У меня есть доступ к репозиториям GitHub.

Я соединяю приложение для Android блок за блоком, и это доставляет мне ад.

Как отличить модуль, библиотеки, jar, проекты библиотек, проекты gradle, aar и jar. Может кто-нибудь, пожалуйста, дайте мне практическое определение. НЕ из офигенного поиска в гугле. У меня тоже гугл.

PS да я нуб и не горжусь этим.

Ответы на вопрос(2)

Решение Вопроса

Я просто даю краткое описание каждого из них. Я надеюсь, что я чист.

Модуль: Модуль - это компонент вашего приложения, который может собирать / тестировать самостоятельно и, при необходимости, повторно использовать его в другом приложении.

Библиотеки: AAR-файлы, JAR-файлы и т. Д.

JAR: Библиотека Java

AAR: Как и в случае с JAR, единственное отличие состоит в том, что он также содержит файлы для Android, такие как ресурсы и т. Д.

Gradle Project: Gradle - это просто система сборки, которая используется Android Studio для сборки проекта Android. Он очень мощный по сравнению с системой сборки, которая использовалась в Eclipse ранее.

Библиотечный проект: Проект библиотеки Android похож на проект приложения Android в том, что он также включает файл манифеста проекта в корневой каталог проекта. Кроме того, этот каталог содержит src, res и другие каталоги, которые вы также найдете при создании проекта приложения. Однако есть существенная разница. Вы не можете скомпилировать проект библиотеки в файл APK, потому что проект библиотеки не описывает приложение. Вместо этого он предоставляет повторно используемый код и ресурсы, которые вносят вклад в приложение, когда проект приложения и исходный код ссылаются на проект библиотеки. Во время сборки этот код и эти ресурсы объединяются в APK-файл приложения.

Чтобы объяснить больше об этом, позвольте мне привести пример: Скажем, вы хотите использовать залп сетевой библиотеки для вызовов API, теперь, поскольку это библиотека с открытым исходным кодом от Google, вы можете клонировать ее, настраивая в соответствии с вашими требованиями.

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

Теперь предположим, что вы начали создавать приложение, в котором вам нужно выполнять HTTP-вызовы, поэтому вам нужно добавить библиотеку залпов в ваш проект. У вас есть два варианта для этого:

Скомпилируйте залп проекта вашей библиотеки, сгенерируйте файл aar и добавьте его в приложение Project.

Добавьте Volley как модуль в ваш проект. (Если вы выберете эту опцию, вы можете внести изменения в библиотеку залпа в том же студийном проекте, так как она будет действовать как компонент в вашем проекте)

Пожалуйста, дайте мне знать, если что-то не понятно.

 Srinivasan23 июн. 2016 г., 09:48
Есть ли какая-либо разница в производительности или реинжиниринге при использовании библиотеки в качестве файла или модуля .aar?
1.)модуль

A module представляет собой набор исходных файлов и параметров сборки, которые позволяют разделить ваш проект на отдельные функциональные блоки. Ваш проект может иметь один или несколько модулей, и один модуль может использовать другой модуль в качестве зависимости. Каждый модуль может быть независимо собран, протестирован и отлажен.

Есть4 тип измодуль вAndroid Studio.

Модуль телефона и столаМодуль Android WearМодуль Android TVСтеклянный модуль2.)Библиотека поддержки

Библиотека поддержки Android предлагает ряд функций, которые не встроены в структуру. Эти библиотеки предлагают обратно совместимые версии новых функций, предоставляют полезные элементы пользовательского интерфейса, которые не включены в платформу, и предоставляют ряд утилит, которые могут использовать приложения.

Библиотеки поддержки обеспечиваютряд различных функций:

Обратная совместимость версии компонентов фреймворка.Элементы пользовательского интерфейса для реализации рекомендуемого Androidмакеты.Поддержка разныхформ-факторы.Разнообразныйполезность функции.3.)Jar файл

JarFile используется для чтения записей jar и связанных с ними данных из файлов jar.

для более подробной информации посетите это:https://developer.android.com/reference/java/util/jar/JarFile.html

4.)Android Library Project

Команда Android представилаnew binary distribution format называетсяAndroid-архив (AAR), Пакет .aar - это бинарный дистрибутив проекта библиотеки Android.

AAR похож на файл JAR, но он может содержать ресурсы, а также скомпилированный байт-код. Это позволяет AAR-файлуincluded in the build process Android-приложения, похожего наJAR file

5.)Gradle и Gradle Project

Gradle являетсяавтоматизированный инструментарий сборки, позволяющий конфигурировать и управлять проектами с помощью набора файлов конфигурации сборки, Это включает в себя определение того, как проект должен быть построен, какие зависимости должны быть выполнены для успешного построения проекта и каким должен быть конечный результат (или результаты) процесса сборки. Сила Gradle заключается в гибкости, которую он предоставляет разработчику. Система Gradle представляет собой автономную среду командной строки, которая может быть интегрирована в другие среды с помощью плагинов. В случае Android Studio интеграция с Gradle обеспечивается через соответствующий плагин Android Studio.

для более подробной информации посетите это:http://www.techotopia.com/index.php/An_Overview_of_Gradle_in_Android_Studio

 Ironman12 июн. 2016 г., 10:23
@ Акман, смотрите мой ответ ниже.

Ваш ответ на вопрос