-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathdependencies.gradle
134 lines (108 loc) · 7.02 KB
/
dependencies.gradle
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
ext {
Versions = [
glideVersion : "4.11.0",
room : "2.2.5",
retrofit2 : "2.9.0",
kotlinVersion : '1.3.72',
bindingAdapter: '4.0.0',
navigation : "2.3.0",
hilt : "2.28.3-alpha",
lifecycle : "2.2.0",
]
Deps = [
// 官方支持库
appcompat : "androidx.appcompat:appcompat:1.2.0",
recyclerView : "androidx.recyclerview:recyclerview:1.1.0",
material : "com.google.android.material:material:1.2.0",
swipeRefreshLayout : "androidx.swiperefreshlayout:swiperefreshlayout:1.1.0",
activity : 'androidx.activity:activity:1.2.0-alpha07',
activityKTX : 'androidx.activity:activity-ktx:1.2.0-alpha07',
fragment : 'androidx.fragment:fragment:1.3.0-alpha07',
fragmentKTX : 'androidx.fragment:fragment-ktx:1.3.0-alpha07',
constraintLayout : "androidx.constraintlayout:constraintlayout:2.0.0-rc1",
slidingPaneLayout : "androidx.slidingpanelayout:slidingpanelayout:1.1.0",
paging : "androidx.paging:paging-runtime:2.1.2",
viewPager2 : "androidx.viewpager2:viewpager2:1.0.0",
lifecycleJava8 : "androidx.lifecycle:lifecycle-common-java8:$Versions.lifecycle",
lifecycleProcess : "androidx.lifecycle:lifecycle-process:$Versions.lifecycle",
// 数据库
roomRuntime : "androidx.room:room-runtime:$Versions.room",
roomCompiler : "androidx.room:room-compiler:$Versions.room",
roomRxJava2 : "androidx.room:room-rxjava2:$Versions.room",
// debugImplementation,可以在debug阶段通过浏览器看到数据库
debugDB : "com.amitshekhar.android:debug-db:1.0.6",
// 网络
retrofit2 : "com.squareup.retrofit2:retrofit:$Versions.retrofit2",
retrofit2RxJava2 : "com.squareup.retrofit2:adapter-rxjava2:$Versions.retrofit2",
networkResponseAdapter : "com.github.haroldadmin:NetworkResponseAdapter:4.0.1",
// 图片加载
glide : "com.github.bumptech.glide:glide:$Versions.glideVersion",
glideCompiler : "com.github.bumptech.glide:compiler:$Versions.glideVersion",
gson : "com.google.code.gson:gson:2.8.6",
gsonConverter : "com.squareup.retrofit2:converter-gson:2.7.2",
// Rx
rxAndroid2 : "io.reactivex.rxjava2:rxandroid:2.1.1",
rxJava2 : "io.reactivex.rxjava2:rxjava:2.2.10",
rxKotlin : "io.reactivex.rxjava2:rxkotlin:2.3.0",
// 内存泄露
leakCanary2 : 'com.squareup.leakcanary:leakcanary-android:2.4',
// kotlin
kotlinStdLib : "org.jetbrains.kotlin:kotlin-stdlib:${Versions.kotlinVersion}",
kotlinPlugin : "org.jetbrains.kotlin:kotlin-gradle-plugin:${Versions.kotlinVersion}",
kotlinKTX : "androidx.core:core-ktx:1.3.0",
// 绑定库
bindingAdapter : "me.tatarka.bindingcollectionadapter2:bindingcollectionadapter:${Versions.bindingAdapter}",
bindingAdapterKTX : "me.tatarka.bindingcollectionadapter2:bindingcollectionadapter-ktx:${Versions.bindingAdapter}",
bindingAdapterRv : "me.tatarka.bindingcollectionadapter2:bindingcollectionadapter-recyclerview:${Versions.bindingAdapter}",
bindingAdapterVp2 : "me.tatarka.bindingcollectionadapter2:bindingcollectionadapter-viewpager2:${Versions.bindingAdapter}",
// 权限申请
livePermissions : 'com.ftd.livepermissions:livepermissions:1.0.2',
// 内部加载中
loadSir : 'com.kingja.loadsir:loadsir:1.3.8',
// ktx
// 在 LiveData 中使用协程
lifecycleLiveDataKTX : "androidx.lifecycle:lifecycle-livedata-ktx:$Versions.lifecycle",
// 在 Lifecycles 中使用协程,视图销毁则自动取消
lifecycleRuntimeKTX : "androidx.lifecycle:lifecycle-runtime-ktx:$Versions.lifecycle",
// 创建可监测的 LiveData 流
reactiveStreamsKTX : "androidx.lifecycle:lifecycle-reactivestreams-ktx:$Versions.lifecycle",
// viewModelScope,会在 view 消失时取消协程
viewModelKTX : "androidx.lifecycle:lifecycle-viewmodel-ktx:$Versions.lifecycle",
// Java language implementation
natigationFragment : "androidx.navigation:navigation-fragment:${Versions.navigation}",
natigationUi : "androidx.navigation:navigation-ui:${Versions.navigation}",
natigationSafeArgsPlugin : "androidx.navigation:navigation-safe-args-gradle-plugin:${Versions.navigation}",
// Dynamic Feature Module Support
natigationDynamicFeatures : "androidx.navigation:navigation-dynamic-features-fragment:${Versions.navigation}",
natigationUiKTX : "androidx.navigation:navigation-ui-ktx:${Versions.navigation}",
natigationRuntimeKTX : "androidx.navigation:navigation-runtime-ktx:${Versions.navigation}",
natigationFragmentKTX : "androidx.navigation:navigation-fragment-ktx:${Versions.navigation}",
// 可在 room 中使用协程
roomKTX : "androidx.room:room-ktx:$Versions.room",
sqliteKTX : "androidx.sqlite:sqlite-ktx:2.1.0",
workKTX : "androidx.work:work-runtime-ktx:2.4.0",
paletteKTX : "androidx.palette:palette-ktx:1.0.0",
collectionKTX : "androidx.collection:collection-ktx:1.1.0",
]
Hilt = [
pluginName: "dagger.hilt.android.plugin",
plugin : "com.google.dagger:hilt-android-gradle-plugin:${Versions.hilt}",
core : "com.google.dagger:hilt-android:${Versions.hilt}",
compiler : "com.google.dagger:hilt-android-compiler:${Versions.hilt}",
]
}
/**
* 添加依赖库的源
* @param handler repositories
*/
static def addRepository(RepositoryHandler handler) {
handler.google()
handler.maven { url 'https://maven.aliyun.com/repository/google' }
handler.maven { url 'https://maven.aliyun.com/repository/jcenter' }
handler.maven { url 'http://maven.aliyun.com/nexus/content/groups/public' }
handler.maven { url "https://www.jitpack.io" }
handler.maven { url "https://dl.bintray.com/tencentqcloudterminal/maven" }
handler.mavenCentral()
}
// 添加到全局的变量中
ext.addRepository = this.&addRepository