Skip to content

Instantly share code, notes, and snippets.

@fython
Last active April 12, 2018 08:10
Show Gist options
  • Save fython/821c1649302eac7540142ac068519ae1 to your computer and use it in GitHub Desktop.
Save fython/821c1649302eac7540142ac068519ae1 to your computer and use it in GitHub Desktop.
Usual Android Libraries collection (Gradle)
ext {
// Libraries version
androidSupportVersion = '27.1.1'
kotlinxCoroutinesVersion = '0.22.5'
okhttp3Version = '3.10.0'
retrofit2Version = '2.4.0'
materialPrefVersion = '2.2.3'
androidKtxVersion = '0.3'
glideVersion = '4.7.0'
butterKnifeVersion = '8.8.1'
stethoVersion = '1.5.0'
frescoVersion = '1.9.0'
firebaseVersion = '11.8.0'
libs = [
/**
* Kotlin & kotlinx libraries
*/
kotlin : [
stdlib_jdk7 : "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlinVersion",
stdlib_jdk8 : "org.jetbrains.kotlin:kotlin-stdlib-jdk8:$kotlinVersion",
coroutines_core : "org.jetbrains.kotlinx:kotlinx-coroutines-core:$kotlinxCoroutinesVersion",
coroutines_android: "org.jetbrains.kotlinx:kotlinx-coroutines-android:$kotlinxCoroutinesVersion"
],
/**
* Android Support Libraries
* https://developer.android.com/topic/libraries/support-library/packages.html
*/
support : [
appcompat : "com.android.support:appcompat-v7:$androidSupportVersion",
recyclerview : "com.android.support:recyclerview-v7:$androidSupportVersion",
cardview : "com.android.support:cardview-v7:$androidSupportVersion",
mediarouter : "com.android.support:mediarouter-v7:$androidSupportVersion",
palette : "com.android.support:palette-v7:$androidSupportVersion",
customtabs : "com.android.support:customtabs:$androidSupportVersion",
design : "com.android.support:design:$androidSupportVersion",
compat : "com.android.support:support-compat:$androidSupportVersion",
core_utils : "com.android.support:support-core-utils:$androidSupportVersion",
core_ui : "com.android.support:support-core-ui:$androidSupportVersion",
media_compat : "com.android.support:support-media-compat:$androidSupportVersion",
fragment : "com.android.support:support-fragment:$androidSupportVersion",
annotations : "com.android.support:support-annotations:$androidSupportVersion",
dynamic_animation : "com.android.support:support-dynamic-animation:$androidSupportVersion",
test_runner : "com.android.support.test:runner:1.0.1",
test_espresso_core: "com.android.support.test.espresso:espresso-core:3.0.1",
multidex : "com.android.support:multidex:1.0.3",
support_v13 : "com.android.support:support-v13:$androidSupportVersion",
wear : "com.android.support:wear:$androidSupportVersion"
],
android_billing: "com.android.billingclient:billing:1.0",
/**
* Android Architecture Components
* https://developer.android.com/topic/libraries/architecture/adding-components.html
*/
arch : [
extensions : "android.arch.lifecycle:extensions:1.1.1",
viewmodel : "android.arch.lifecycle:viewmodel:1.1.1",
livedata : "android.arch.lifecycle:livedata:1.1.1",
compiler : "android.arch.lifecycle:compiler:1.1.1",
room_runtime : "android.arch.persistence.room:runtime:1.0.0",
room_compiler : "android.arch.persistence.room:compiler:1.0.0",
java8_support : "android.arch.lifecycle:common-java8:1.1.1",
rxjava2_support : "android.arch.persistence.room:rxjava2:1.0.0",
reactivestreams_support: "android.arch.lifecycle:reactivestreams:1.1.1",
paging : "android.arch.paging:runtime:1.0.0-beta1",
paging_rxjava2_support : "android.arch.paging:rxjava2:1.0.0-alpha1",
test_helpers_livedata : "android.arch.core:core-testing:1.1.1",
test_helpers_room : "android.arch.persistence.room:testing:1.0.0",
lifecycle_core : "android.arch.lifecycle:runtime:1.1.1"
],
/**
* Firebase libraries
* https://firebase.google.com/docs/android/setup
*/
firebase : [
core : "com.google.firebase:firebase-core:$firebaseVersion",
database : "com.google.firebase:firebase-database:$firebaseVersion",
firestore : "com.google.firebase:firebase-firestore:$firebaseVersion",
storage : "com.google.firebase:firebase-storage:$firebaseVersion",
crash : "com.google.firebase:firebase-crash:$firebaseVersion",
auth : "com.google.firebase:firebase-auth:$firebaseVersion",
messaging : "com.google.firebase:firebase-messaging:$firebaseVersion",
config : "com.google.firebase:firebase-config:$firebaseVersion",
invites : "com.google.firebase:firebase-invites:$firebaseVersion",
ads : "com.google.firebase:firebase-ads:$firebaseVersion",
appindexing : "com.google.firebase:firebase-appindexing:$firebaseVersion",
pref : "com.google.firebase:firebase-pref:$firebaseVersion"
],
androidKtx : [
core: "androidx.core:core-ktx:$androidKtxVersion"
],
junit : "junit:junit:4.12",
gson : "com.google.code.gson:gson:2.8.2",
/**
* RxJava 2
*/
rx2 : [
core : "io.reactivex.rxjava2:rxjava:2.1.12",
android: "io.reactivex.rxjava2:rxandroid:2.0.2"
],
/**
* OkHttp 3
*/
okhttp3 : [
core : "com.squareup.okhttp3:okhttp:$okhttp3Version",
websockets : "com.squareup.okhttp3:okhttp-ws:$okhttp3Version",
urlconnection: "com.squareup.okhttp3:okhttp-urlconnection:$okhttp3Version",
mockwebserver: "com.squareup.okhttp3:mockwebserver:$okhttp3Version"
],
/**
* RetroFit 2
*/
retrofit2 : [
core : "com.squareup.retrofit2:retrofit:$retrofit2Version",
converter_gson : "com.squareup.retrofit2:converter-gson:$retrofit2Version",
converter_jackson : "com.squareup.retrofit2:converter-jackson:$retrofit2Version",
converter_moshi : "com.squareup.retrofit2:converter-moshi:$retrofit2Version",
converter_protobuf : "com.squareup.retrofit2:converter-protobuf:$retrofit2Version",
adapter_rxjava2 : "com.squareup.retrofit2:adapter-rxjava2:$retrofit2Version",
mock : "com.squareup.retrofit2:retrofit-mock:$retrofit2Version",
// Converter for Kotlin coroutines is written by Jake Wharton. Not official.
converter_kotlin_coroutines: "com.jakewharton.retrofit:retrofit2-kotlin-coroutines-experimental-adapter:1.0.0"
],
/**
* Rikka's libraries
*/
rikka : [
fontprovider: "moe.shizuku.fontprovider:api:10",
preference : [
core : "moe.shizuku.preference:preference:$materialPrefVersion",
dialog_android : "moe.shizuku.preference:preference-dialog-android:$materialPrefVersion",
dialog_appcompat: "moe.shizuku.preference:preference-dialog-appcompat:$materialPrefVersion",
switch_compat : "moe.shizuku.preference:preference-switchcompat:$materialPrefVersion",
simplemenu : "moe.shizuku.preference:preference-simplemenu:$materialPrefVersion"
]
],
/**
* Glide & extensions (including third-party)
*/
glide : [
core : "com.github.bumptech.glide:glide:$glideVersion",
compiler : "com.github.bumptech.glide:compiler:$glideVersion",
okhttp3_integration : "com.github.bumptech.glide:okhttp3-integration:$glideVersion",
recyclerview_integration: "com.github.bumptech.glide:recyclerview-integration:$glideVersion",
volley_integration : "com.github.bumptech.glide:volley-integration:$glideVersion"
],
/**
* Picasso & extensions (including third-party)
*/
picasso : [
core : "com.squareup.picasso:picasso:2.5.2",
// Unofficial support: https://github.com/florent37/PicassoPalette
palette_support: "com.github.florent37:picassopalette:2.0.0"
],
/**
* Fresco & extensions (including third-party)
*/
fresco : [
core : "com.facebook.fresco:fresco:$frescoVersion",
animated_gif : "com.facebook.fresco:animated-gif:$frescoVersion",
animated_webp : "com.facebook.fresco:animated-webp:$frescoVersion",
webp_support : "com.facebook.fresco:webpsupport:$frescoVersion",
imagepipeline_okhttp3: "com.facebook.fresco:imagepipeline-okhttp3:$frescoVersion"
],
widgets : [
// https://github.com/hdodenhof/CircleImageView
circleimageview : "de.hdodenhof:circleimageview:2.2.0",
// https://github.com/aurelhubert/ahbottomnavigation
ahbottomnavigation : "com.aurelhubert:ahbottomnavigation:2.1.0",
// https://github.com/KeepSafe/TapTargetView
taptargetview : "com.getkeepsafe.taptargetview:taptargetview:1.11.0",
// https://github.com/rubensousa/RecyclerViewSnap
recyclerview_snap : "com.github.rubensousa:gravitysnaphelper:1.5",
// https://github.com/timusus/RecyclerView-FastScroll
recyclerview_fastscroll: "com.simplecityapps:recyclerview-fastscroll:1.0.17"
],
// Project Condom: https://github.com/oasisfeng/condom
condom : "com.oasisfeng.condom:library:2.2.0",
// ButterKnife libraries
butterknife : [
core : "com.jakewharton:butterknife:$butterKnifeVersion",
compiler : "com.jakewharton:butterknife-compiler:$butterKnifeVersion",
gradle_plugin: "com.jakewharton:butterknife-gradle-plugin:$butterKnifeVersion"
],
// https://github.com/jhy/jsoup
jsoup : "org.jsoup:jsoup:1.11.2",
// Stetho: https://github.com/facebook/stetho
stetho : [
core : "com.facebook.stetho:stetho:$stethoVersion",
okhttp3_support : "com.facebook.stetho:stetho-okhttp3:$stethoVersion",
urlconnection_support: "com.facebook.stetho:stetho-urlconnection:$stethoVersion",
js_rhino : "com.facebook.stetho:stetho-js-rhino:$stethoVersion"
],
// https://github.com/drakeet/MultiType
multitype : [
core : "me.drakeet.multitype:multitype:3.4.4",
kotlin_ext: "me.drakeet.multitype:multitype-kotlin:3.4.4"
]
]
}
@fython
Copy link
Author

fython commented Apr 11, 2018

FAQ

Q: Will it be kept to latest version?
A: No. We'd better check version of libraries you need manually. Then choose the appropriate version for your project. But I still update it occasionally.

Q: Can I contribute some code?
A: I'm sorry that this file will be only maintained by myself. Of course you still can comment it with your idea.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment