Модуль обновления, созданный из локального

Вот моя настройка: у меня есть андроидная библиотека, которая создает aar при экспорте, и у меня есть приложение для Android, которое использует библиотеку в качестве модуля (это единственный способ импортировать локальный файл aar).

Чтобы импортировать файл aar в качестве модуля в приложении для Android, я нажимаю на FileNew Module...Import.JAR or.AAR Package и я выбираю экспортированный файл aar. После этого мне нужно только добавить строку compile project в мой файл gradle, чтобы иметь возможность использовать мою библиотеку.

Я часто обновляю свою библиотеку, потому что сейчас ее разрабатываю, и я хочу ее часто тестировать. Проблема в том, что я не знаю, как обновить модуль в моем проекте приложения Android...

Что я делаю сейчас, так это то, что я выпускаю gradlew assembleRelease в моем проекте библиотеки Android для создания нового файла aar, а затем в моем проекте приложения для Android я удаляю модуль в окне " Module Settings (или " Project Structure), я удаляю папку модуля в корне моего проекта, а затем снова импортирую его. Вся эта операция занимает около 3 минут каждый раз, когда я хочу протестировать свою библиотеку, и я устал от этого. Вы знаете, есть ли более быстрый способ обновления модуля андроида, созданного из файла aar?

Ответ 1

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

В вашем проекте gradle file в allprojects. тег repositories, добавьте следующее:

flatDir {
    dirs 'libs'
}

В вашем модуле приложения убедитесь, что у вас есть папка libs с файлом aar. Затем добавьте строку compile в тег dependencies вашего файла градиента модуля приложения.

dependencies {
    compile 'package:name:[email protected]'
}

Теперь, когда вы обновляете файл aar в каталоге libs, ваше приложение будет использовать обновленную версию вашей библиотеки.

Заметка:

  • В compile 'package:name:[email protected]', name - физическое имя файла библиотеки. Например, lib-debug или lib-release и т.д.
  • version и package можно найти в файле AndroidManifest.xml внутри файла.aar. (Как открыть файл.aar?)