Skip to content
dev
Switch branches/tags
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
KAU

An extensive collection of Kotlin Android Utils

This library contains small helper functions used throughout almost all of my other projects. The goal is to make common interactions executable in a single line.

Get it on Google Play

ChangelogMigration


KAU is available on JitPack

Build Status Crowdin Awesome Kotlin Badge ZenHub GitHub license

To apply, add the following to your root build.gradle:

allprojects {
    repositories {
        ...
        jcenter()
        maven { url "https://jitpack.io" }
        google()
    }
}

And add the following dependencies (You can use a specific version, commit, or -SNAPSHOT):

Note that only core is required if you want the basic features. Note that if you use any particular submodule, it will automatically include all of its necessary dependencies.

dependencies {
    // all submodules extend this
    implementation "ca.allanwang.kau:core:$KAU"
    // all submodules with extensive ui extend this
    implementation "ca.allanwang.kau:core-ui:$KAU"
    
    implementation "ca.allanwang.kau:about:$KAU"
    implementation "ca.allanwang.kau:adapter:$KAU"
    implementation "ca.allanwang.kau:colorpicker:$KAU"
    implementation "ca.allanwang.kau:fastadapter:$KAU"
    implementation "ca.allanwang.kau:kpref-activity:$KAU"
    implementation "ca.allanwang.kau:mediapicker:$KAU"
    implementation "ca.allanwang.kau:searchview:$KAU"
}

Submodules

Linked to their respective docs.
Included dependencies are only those with exposed APIs; see new dependency configurations.
Implemented external dependencies are wrapped in parentheses. All KAU submodule dependencies are implemented, with the exception of core in core-ui. This means that you'll need to explicitly include each submodule you'd like to use, even if another declared submodule depends on it.

Core

Core UI

  • Collection of complex views and widgets
  • Includes :core

About

  • Modularized overlaying about section. Comes with a main panel, automatic lib detection, and a FAQ parser; also includes the lib strings for KAU.
  • Includes :core-ui, :fastadapter, About Libraries

Adapter

  • RecyclerView animations
  • Includes :core

Color Picker

  • Implementation of a color picker dialog with subtle transitions and a decoupled callback
  • Includes :core

FastAdapter

  • Kotlin bindings for the fast adapter
  • Includes :core, :adapter, Fast Adapter

KPref Activity

  • Fully programmatic implementation of a Preference Activity, backed by a RecyclerView
  • Includes :core, :fastadapter, :colorpicker

Media Picker

  • Fully functional image and video pickers, both as an overlay and as a requested activity.
  • Includes :core-ui, Glide, (Blurry)

SearchView

  • Material searchview with kotlin bindings
  • Includes :core-ui, :fastadapter

Gradle Plugin

  • Gradle plugin to help facilitate versioning and other gradle functions

Showcase

About Activity Gif Ink Indicator Gif Color Picker Gif KPref Items Gif SearchView Gif Swipe Gif

Proguard/MultiDex

Given that the core module contains a lot of extension functions, you may run into a dex error (over 64k methods)

To resolve that, add multiDexEnabled true under your app.gradle > android > defaultConfig

Likewise, it is highly recommended to use proguard to clean up your project upon release. All KAU components support proguard out of the box. Some may have extra requirements for certain features, which will be detailed in their respective README.

Translations

KAU depends on translations crowdsourced by the general public. If you would like to contribute, please visit here

Special thanks to the following awesome people for translating significant portions of KAU!

Language Contributors
Arabic Mohammed Qubati
Catalan Jaime Muñoz Martín
Chinese (Simplified) Alcatelia
Chinese (Traditional) yipinghuangSu, Jun-MingWei
Danish mhtorp
Dutch ItGuillaumeTatum ter Kuile
French Vincent KulakJean-Philippe Gravel
Galician Xesús M. Mosquera
German Bushido1992Marcel Soehnchen3LD0mi HA
Greek George Kitsopoulos
Hungarian János Erkli
Indonesian M. Angga Ariska
Italian Bonnee
Korean 잇스테이크
Norwegian
Polish pantinPL
Portuguese Sérgio MarquesMiguel Dos Reis
Portuguese (Brazilian) TheusKhan
Russian Вадим Жушман
Serbian Nikola Radmanović
Spanish Jahir FiquitivaNefi Salazar
Swedish Artswitcher
Tagalog Fray Damaso
Thai Thanawat Hanthong
Turkish zuma17
Ukrainian Вадим Жушман
Vietnamese Alienz

The full activity stream for the translations can be found here