Files
AndroidBaseFrameMVVM/buildSrc/src/main/kotlin/com/quyunshuo/androidbaseframemvvm/buildsrc/DependencyConfig.kt

173 lines
7.8 KiB
Kotlin
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

package com.quyunshuo.androidbaseframemvvm.buildsrc
/**
* 项目依赖版本统一管理
*
* @author Qu Yunshuo
* @since 4/24/21 4:00 PM
*/
object DependencyConfig {
/**
* 依赖版本号
*
* @author Qu Yunshuo
* @since 4/24/21 4:01 PM
*/
object Version {
// AndroidX--------------------------------------------------------------
const val AppCompat = "1.2.0"
const val CoreKtx = "1.3.1"
const val ConstraintLayout = "2.0.1" // 约束布局
const val TestExtJunit = "1.1.2"
const val TestEspresso = "3.3.0"
const val ActivityKtx = "1.1.0"
const val FragmentKtx = "1.2.5"
const val MultiDex = "2.0.1"
// Android---------------------------------------------------------------
const val Junit = "4.13"
const val Material = "1.2.0" // 材料设计UI套件
// Kotlin----------------------------------------------------------------
const val Kotlin = "1.5.10"
const val Coroutines = "1.5.0" // 协程
// JetPack---------------------------------------------------------------
const val Lifecycle = "2.3.1" // Lifecycle相关ViewModel & LiveData & Lifecycle
const val Hilt = "2.35.1" // DI框架-Hilt
const val HiltAndroidx = "1.0.0"
// GitHub----------------------------------------------------------------
const val OkHttp = "4.9.0" // OkHttp
const val OkHttpInterceptorLogging = "4.9.1" // OkHttp 请求Log拦截器
const val Retrofit = "2.9.0" // Retrofit
const val RetrofitConverterGson = "2.9.0" // Retrofit Gson 转换器
const val Gson = "2.8.7" // Gson
const val MMKV = "1.2.9" // 腾讯 MMKV 替代SP
const val AutoSize = "1.2.1" // 屏幕适配
const val ARoute = "1.5.1" // 阿里路由
const val ARouteCompiler = "1.5.1" // 阿里路由 APT
const val RecyclerViewAdapter = "3.0.4" // RecyclerViewAdapter
const val EventBus = "3.2.0" // 事件总线
const val PermissionX = "1.4.0" // 权限申请
const val LeakCanary = "2.7" // 检测内存泄漏
const val AutoService = "1.0" // 自动生成SPI暴露服务文件
const val Coil = "1.3.0" // Kotlin图片加载框架
// 第三方SDK--------------------------------------------------------------
const val TencentBugly = "3.3.9" // 腾讯Bugly 异常上报
const val TencentBuglyNative = "3.8.0" // Bugly native异常上报
const val TencentTBSX5 = "43939" // 腾讯X5WebView
}
/**
* AndroidX相关依赖
*
* @author Qu Yunshuo
* @since 4/24/21 4:01 PM
*/
object AndroidX {
const val AndroidJUnitRunner = "androidx.test.runner.AndroidJUnitRunner"
const val AppCompat = "androidx.appcompat:appcompat:${Version.AppCompat}"
const val CoreKtx = "androidx.core:core-ktx:${Version.CoreKtx}"
const val ConstraintLayout =
"androidx.constraintlayout:constraintlayout:${Version.ConstraintLayout}"
const val TestExtJunit = "androidx.test.ext:junit:${Version.TestExtJunit}"
const val TestEspresso = "androidx.test.espresso:espresso-core:${Version.TestEspresso}"
const val ActivityKtx = "androidx.activity:activity-ktx:${Version.ActivityKtx}"
const val FragmentKtx = "androidx.fragment:fragment-ktx:${Version.FragmentKtx}"
const val MultiDex = "androidx.multidex:multidex:${Version.MultiDex}"
}
/**
* Android相关依赖
*
* @author Qu Yunshuo
* @since 4/24/21 4:02 PM
*/
object Android {
const val Junit = "junit:junit:${Version.Junit}"
const val Material = "com.google.android.material:material:${Version.Material}"
}
/**
* JetPack相关依赖
*
* @author Qu Yunshuo
* @since 4/24/21 4:02 PM
*/
object JetPack {
const val ViewModel = "androidx.lifecycle:lifecycle-viewmodel-ktx:${Version.Lifecycle}"
const val ViewModelSavedState =
"androidx.lifecycle:lifecycle-viewmodel-savedstate:${Version.Lifecycle}"
const val LiveData = "androidx.lifecycle:lifecycle-livedata-ktx:${Version.Lifecycle}"
const val Lifecycle = "androidx.lifecycle:lifecycle-runtime-ktx:${Version.Lifecycle}"
const val LifecycleCompilerAPT =
"androidx.lifecycle:lifecycle-compiler:${Version.Lifecycle}"
const val HiltCore = "com.google.dagger:hilt-android:${Version.Hilt}"
const val HiltApt = "com.google.dagger:hilt-compiler:${Version.Hilt}"
const val HiltAndroidx = "androidx.hilt:hilt-compiler:${Version.HiltAndroidx}"
}
/**
* Kotlin相关依赖
*
* @author Qu Yunshuo
* @since 4/24/21 4:02 PM
*/
object Kotlin {
const val Kotlin = "org.jetbrains.kotlin:kotlin-stdlib:${Version.Kotlin}"
const val CoroutinesCore =
"org.jetbrains.kotlinx:kotlinx-coroutines-core:${Version.Coroutines}"
const val CoroutinesAndroid =
"org.jetbrains.kotlinx:kotlinx-coroutines-android:${Version.Coroutines}"
}
/**
* GitHub及其他相关依赖
*
* @author Qu Yunshuo
* @since 4/24/21 4:02 PM
*/
object GitHub {
const val OkHttp = "com.squareup.okhttp3:okhttp:${Version.OkHttp}"
const val OkHttpInterceptorLogging =
"com.squareup.okhttp3:logging-interceptor:${Version.OkHttpInterceptorLogging}"
const val Retrofit = "com.squareup.retrofit2:retrofit:${Version.Retrofit}"
const val RetrofitConverterGson =
"com.squareup.retrofit2:converter-gson:${Version.RetrofitConverterGson}"
const val Gson = "com.google.code.gson:gson:${Version.Gson}"
const val MMKV = "com.tencent:mmkv-static:${Version.MMKV}"
const val AutoSize = "me.jessyan:autosize:${Version.AutoSize}"
const val ARoute = "com.alibaba:arouter-api:${Version.ARoute}"
const val ARouteCompiler = "com.alibaba:arouter-compiler:${Version.ARouteCompiler}"
const val RecyclerViewAdapter =
"com.github.CymChad:BaseRecyclerViewAdapterHelper:${Version.RecyclerViewAdapter}"
const val EventBus = "org.greenrobot:eventbus:${Version.EventBus}"
const val EventBusAPT = "org.greenrobot:eventbus-annotation-processor:${Version.EventBus}"
const val PermissionX = "com.permissionx.guolindev:permissionx:${Version.PermissionX}"
const val LeakCanary = "com.squareup.leakcanary:leakcanary-android:${Version.LeakCanary}"
const val AutoService = "com.google.auto.service:auto-service:${Version.AutoService}"
const val AutoServiceAnnotations =
"com.google.auto.service:auto-service-annotations:${Version.AutoService}"
const val Coil = "io.coil-kt:coil:${Version.Coil}"
const val CoilGIF = "io.coil-kt:coil-gif:${Version.Coil}"
const val CoilSVG = "io.coil-kt:coil-svg:${Version.Coil}"
const val CoilVideo = "io.coil-kt:coil-video:${Version.Coil}"
}
/**
* SDK相关依赖
*
* @author Qu Yunshuo
* @since 4/24/21 4:02 PM
*/
object SDK {
const val TencentBugly = "com.tencent.bugly:crashreport:${Version.TencentBugly}"
const val TencentBuglyNative =
"com.tencent.bugly:nativecrashreport:${Version.TencentBuglyNative}"
const val TencentTBSX5 = "com.tencent.tbs.tbssdk:sdk:${Version.TencentTBSX5}"
}
}