/AndroidKit

Set of base libraries for Android development

Primary LanguageKotlin

Android Kit

Фреймворк для Android разработки

Использование

В корневом build.gradle необходимо подключить репозиторий

allprojects {
    repositories {
        maven { 
            url "https://maven.pkg.github.com/eadm/AndroidKit"
            credentials {
                username = System.getenv('GITHUB_USER') ?: project.properties['GITHUB_USER']
                password = System.getenv('GITHUB_PERSONAL_ACCESS_TOKEN') ?: project.properties['GITHUB_PERSONAL_ACCESS_TOKEN']
            }
        }
    }
}

Далее необходимо сгенерировать GitHub Token с разрешением read:packages и поместить его в корневой файл gradle.properties (обычно лежит в ~/.gradle/gradle.properties).

GITHUB_USER=YOUR_GITHUB_USER_NAME
GITHUB_PERSONAL_ACCESS_TOKEN=YOUR_GITHUB_ACCESS_TOKEN

Артефакты

Model

Набор базовых классов и расширений для моделей

dependencies {
    implementation("ru.nobird.app.core:model:1.0.8")
}

domain-rx

Расширения для работы с RxJava

dependencies {
    implementation 'ru.nobird.android.domain:rx:x.y.z'
}

Presentation

presentation-base

База для presentation слоя

dependencies {
    implementation 'ru.nobird.android.presentation:base:1.1.0'
}

presentation-redux

База для presentation-redux слоя, является альтернативой presentation-base

dependencies {
    implementation("ru.nobird.app.presentation:presentation-redux:1.3.1")
}

presentation-redux-coroutines

Набор расширений для presentation-redux архитектуры с корутинами

dependencies {
    implementation("ru.nobird.app.presentation:presentation-redux-coroutines:1.3.1")
}

presentation-redux-rx

Набор расширений для presentation-redux архитектуры с RxJava 2

dependencies {
    implementation("ru.nobird.android.presentation:redux-rx:1.3.0")
}

View

AdapterDelegates

Делегаты для адаптеров списков

dependencies {
    implementation 'ru.nobird.android.ui:adapter-delegates:1.1.1'
}

Adapters

Набор расширений для адаптеров списков, включая автоматическое обновление через diff callback и работу с выделением

dependencies {
    implementation 'ru.nobird.android.ui:adapters:1.1.1'
}

view-injection

Набор расширений для DI

dependencies {
    implementation("ru.nobird.android.view:injection:1.1.0")
}

view-navigation

Набор расширений для навигации через Cicerone

dependencies {
    implementation 'ru.nobird.android.view:navigation:1.1.0'
}

view-ui

Набор UI расширений

dependencies {
    implementation 'ru.nobird.android.view:ui:1.1.0'
}

view-redux

Набор UI расширений для redux архитектры

dependencies {
    implementation("ru.nobird.android.view:redux:1.3.0")
}