To keep all our libraries' transitive dependencies in sync we use this shared version configuration. We try to avoid transitive dependency versions conflicts as much as possible to make integration of our SDKs as easy as possible.
CONFIG.configDirexports the path to the config folder.CONFIG.versionsexports version information for runtime dependendencies and target environment across SDK components.jitpack()andgradle()aliases in repositories closure (gradle plugin repo only works forbuildscript.repositoriesclosure).
buildscript {
apply from: "config/index.gradle"
repositories {
jcenter()
jitpack()
gradle()
}
dependencies {
classpath "com.android.tools.build:gradle:${CONFIG.versions.android.plugin}"
}
}
allprojects {
repositories {
jitpack()
}
}