6.7.0 - Alpha6 - 使用版本目录 (Version Catalogs) 集中管理 Gradle 依赖和插件版本

This commit is contained in:
SuperMonster003
2025-09-24 15:53:37 +08:00
parent e46a3bd15b
commit ef076d1cf8
11 changed files with 200 additions and 41 deletions

View File

@@ -33,7 +33,8 @@
"文件管理器浮动按钮展开后点击菜单项时优化菜单收起时机",
"崩溃报告页面支持双指缩放调整字体大小并添加常用功能按钮",
"应用启动器图标支持自适应图标特性 _[`issue #405`](http://issues.autojs6.com/405)_",
"Gradle 构建脚本提升 7z 格式文件的解压效率"
"Gradle 构建脚本提升 7z 格式文件的解压效率",
"使用版本目录 (Version Catalogs) 集中管理 Gradle 依赖和插件版本"
],
"dependency": [
"本地化 Root Shell 版本 1.6",

152
gradle/libs.versions.toml Normal file
View File

@@ -0,0 +1,152 @@
[versions]
analytics = "14.4.0"
android-device-names = "2.1.1"
android-logging-log4j = "1.0.3"
android-support-v7 = "28.0.0"
androidannotations = "4.8.0"
animated-svg-view = "1.0.6"
annotation = "1.9.1"
appcompat = "1.7.1"
arsclib = "1.3.5"
barcode-scanning = "17.3.0"
bcpkix-jdk15on = "1.70"
bcprov-jdk15on = "1.70"
cardview = "1.0.0"
circleimageview = "3.1.0"
circularreveal = "2.0.1"
commonmark = "commonmark-parent-0.9.0"
commons-compress = "1.28.0"
commons-lang3 = "3.18.0"
constraintlayout = "2.2.1"
core-ktx = "1.13.1"
easywindow = "10.3"
eventbus = "3.3.1"
expandablerecyclerview = "3.0.0-RC1"
flexbox = "3.0.0"
flexmark-html2md = "0.64.8"
foojay-resolver-convention = "1.0.0"
glide = "4.16.0"
gson = "2.13.1"
icu4j = "77.1"
jcip-annotations = "1.0"
jdeferred = "1.2.6"
joda-time = "2.14.0"
jsoup = "1.20.1"
junit = "4.13.2"
junit-jupiter = "5.13.0"
junit-quickcheck-core = "0.9.2"
junit-quickcheck-generators = "0.9.1"
leakcanary = "2.14"
licensesdialog = "2.2.0"
log4j = "1.2.17"
material = "1.12.0"
materialprogressbar = "1.6.1"
multidex = "2.0.1"
okhttp = "4.12.0"
opencc = "1.2.2"
paho-android-service = "1.1.1"
paho-client-mqttv3 = "1.1.0"
pinyin4j = "2.5.1"
preference-ktx = "1.2.1"
prov = "1.58.0.0"
recyclerview = "1.4.0"
retrofit = "2.12.0"
retrofit2-kotlin-coroutines-adapter = "0.9.2"
room = "2.7.2"
roundedimageview = "2.3.0"
rxandroid = "2.1.1"
rxjava = "2.2.21"
shizuku = "13.1.5"
swiperefreshlayout = "1.1.0"
test-espresso-core = "3.6.1"
test-junit-version = "1.2.1"
test-rules = "1.6.1"
test-runner = "1.6.2"
text-recognition-chinese = "16.0.1"
toaster = "12.6"
versioncompare = "1.5.0"
webkit = "1.14.0"
xz = "1.10"
zip4j = "2.11.5"
[libraries]
analytics = { module = "com.flurry.android:analytics", version.ref = "analytics" }
android-device-names = { module = "com.jaredrummler:android-device-names", version.ref = "android-device-names" }
android-logging-log4j = { module = "de.mindpipe.android:android-logging-log4j", version.ref = "android-logging-log4j" }
androidannotations = { module = "org.androidannotations:androidannotations", version.ref = "androidannotations" }
androidannotations-api = { module = "org.androidannotations:androidannotations-api", version.ref = "androidannotations" }
animated-svg-view = { module = "com.jaredrummler:animated-svg-view", version.ref = "animated-svg-view" }
annotation = { module = "androidx.annotation:annotation", version.ref = "annotation" }
apache-commons-compress = { module = "org.apache.commons:commons-compress", version.ref = "commons-compress" }
appcompat = { module = "androidx.appcompat:appcompat", version.ref = "appcompat" }
appcompat-v7 = { module = "com.android.support:appcompat-v7", version.ref = "android-support-v7" }
arsclib = { module = "io.github.reandroid:ARSCLib", version.ref = "arsclib" }
barcode-scanning = { module = "com.google.mlkit:barcode-scanning", version.ref = "barcode-scanning" }
bcpkix-jdk15on = { module = "org.bouncycastle:bcpkix-jdk15on", version.ref = "bcpkix-jdk15on" }
bcprov-jdk15on = { module = "org.bouncycastle:bcprov-jdk15on", version.ref = "bcprov-jdk15on" }
cardview = { module = "androidx.cardview:cardview", version.ref = "cardview" }
circleimageview = { module = "de.hdodenhof:circleimageview", version.ref = "circleimageview" }
circularreveal = { module = "com.github.ozodrukh:CircularReveal", version.ref = "circularreveal" }
commonmark = { module = "com.github.atlassian:commonmark-java", version.ref = "commonmark" }
commons-lang3 = { module = "org.apache.commons:commons-lang3", version.ref = "commons-lang3" }
constraintlayout = { module = "androidx.constraintlayout:constraintlayout", version.ref = "constraintlayout" }
core-ktx = { module = "androidx.core:core-ktx", version.ref = "core-ktx" }
easywindow = { module = "com.github.getActivity:EasyWindow", version.ref = "easywindow" }
eventbus = { module = "org.greenrobot:eventbus", version.ref = "eventbus" }
expandablerecyclerview = { module = "com.bignerdranch.android:expandablerecyclerview", version.ref = "expandablerecyclerview" }
flexbox = { module = "com.google.android.flexbox:flexbox", version.ref = "flexbox" }
flexmark-html2md = { module = "com.vladsch.flexmark:flexmark-html2md-converter", version.ref = "flexmark-html2md" }
glide = { module = "com.github.bumptech.glide:glide", version.ref = "glide" }
glide-ksp = { module = "com.github.bumptech.glide:ksp", version.ref = "glide" }
gson = { module = "com.google.code.gson:gson", version.ref = "gson" }
icu4j = { module = "com.ibm.icu:icu4j", version.ref = "icu4j" }
jcip-annotations = { module = "net.jcip:jcip-annotations", version.ref = "jcip-annotations" }
jdeferred = { module = "org.jdeferred:jdeferred-android-aar", version.ref = "jdeferred" }
joda-time = { module = "joda-time:joda-time", version.ref = "joda-time" }
jsoup = { module = "org.jsoup:jsoup", version.ref = "jsoup" }
junit = { module = "junit:junit", version.ref = "junit" }
junit-jupiter = { module = "org.junit.jupiter:junit-jupiter", version.ref = "junit-jupiter" }
junit-quickcheck-core = { module = "com.pholser:junit-quickcheck-core", version.ref = "junit-quickcheck-core" }
junit-quickcheck-generators = { module = "com.pholser:junit-quickcheck-generators", version.ref = "junit-quickcheck-generators" }
leakcanary = { module = "com.squareup.leakcanary:leakcanary-android", version.ref = "leakcanary" }
licensesdialog = { module = "de.psdev.licensesdialog:licensesdialog", version.ref = "licensesdialog" }
log4j = { module = "log4j:log4j", version.ref = "log4j" }
material = { module = "com.google.android.material:material", version.ref = "material" }
materialprogressbar = { module = "me.zhanghai.android.materialprogressbar:library", version.ref = "materialprogressbar" }
multidex = { module = "androidx.multidex:multidex", version.ref = "multidex" }
okhttp = { module = "com.squareup.okhttp3:okhttp", version.ref = "okhttp" }
opencc = { module = "com.github.brooklet:android-opencc", version.ref = "opencc" }
paho-android-service = { module = "org.eclipse.paho:org.eclipse.paho.android.service", version.ref = "paho-android-service" }
paho-client-mqttv3 = { module = "org.eclipse.paho:org.eclipse.paho.client.mqttv3", version.ref = "paho-client-mqttv3" }
pinyin4j = { module = "com.belerweb:pinyin4j", version.ref = "pinyin4j" }
preference-ktx = { module = "androidx.preference:preference-ktx", version.ref = "preference-ktx" }
prov = { module = "com.madgag.spongycastle:prov", version.ref = "prov" }
recyclerview = { module = "androidx.recyclerview:recyclerview", version.ref = "recyclerview" }
recyclerview-v7 = { module = "com.android.support:recyclerview-v7", version.ref = "android-support-v7" }
retrofit = { module = "com.squareup.retrofit2:retrofit", version.ref = "retrofit" }
retrofit-adapter-rxjava2 = { module = "com.squareup.retrofit2:adapter-rxjava2", version.ref = "retrofit" }
retrofit-converter-gson = { module = "com.squareup.retrofit2:converter-gson", version.ref = "retrofit" }
retrofit2-kotlin-coroutines-adapter = { module = "com.jakewharton.retrofit:retrofit2-kotlin-coroutines-adapter", version.ref = "retrofit2-kotlin-coroutines-adapter" }
room-compiler = { module = "androidx.room:room-compiler", version.ref = "room" }
room-ktx = { module = "androidx.room:room-ktx", version.ref = "room" }
room-runtime = { module = "androidx.room:room-runtime", version.ref = "room" }
roundedimageview = { module = "com.makeramen:roundedimageview", version.ref = "roundedimageview" }
rxandroid = { module = "io.reactivex.rxjava2:rxandroid", version.ref = "rxandroid" }
rxjava = { module = "io.reactivex.rxjava2:rxjava", version.ref = "rxjava" }
shizuku-api = { module = "dev.rikka.shizuku:api", version.ref = "shizuku" }
shizuku-provider = { module = "dev.rikka.shizuku:provider", version.ref = "shizuku" }
support-annotations = { module = "com.android.support:support-annotations", version.ref = "android-support-v7" }
swiperefreshlayout = { module = "androidx.swiperefreshlayout:swiperefreshlayout", version.ref = "swiperefreshlayout" }
test-espresso-core = { module = "androidx.test.espresso:espresso-core", version.ref = "test-espresso-core" }
test-ext-junit = { module = "androidx.test.ext:junit", version.ref = "test-junit-version" }
test-rules = { module = "androidx.test:rules", version.ref = "test-rules" }
test-runner = { module = "androidx.test:runner", version.ref = "test-runner" }
text-recognition-chinese = { module = "com.google.mlkit:text-recognition-chinese", version.ref = "text-recognition-chinese" }
toaster = { module = "com.github.getActivity:Toaster", version.ref = "toaster" }
tukaani-xz = { module = "org.tukaani:xz", version.ref = "xz" }
versioncompare = { module = "io.github.g00fy2:versioncompare", version.ref = "versioncompare" }
webkit = { module = "androidx.webkit:webkit", version.ref = "webkit" }
zip4j = { module = "net.lingala.zip4j:zip4j", version.ref = "zip4j" }
[plugins]
foojay-resolver-convention = { id = "org.gradle.toolchains.foojay-resolver-convention", version.ref = "foojay-resolver-convention" }

View File

@@ -144,8 +144,8 @@ dependencies {
implementation project(path: ":libs:org.opencv-${versionMap.OPENCV}")
implementation 'androidx.core:core-ktx:1.13.1'
implementation "androidx.preference:preference-ktx:1.2.1"
implementation libs.core.ktx
implementation libs.preference.ktx
}

View File

@@ -109,12 +109,9 @@ dependencies {
implementation fileTree(dir: "libs", include: ["*.jar"])
testImplementation 'junit:junit:4.13.2'
androidTestImplementation 'androidx.test.ext:junit:1.2.1'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.6.1'
implementation 'androidx.core:core-ktx:1.13.1'
implementation 'androidx.appcompat:appcompat:1.7.0'
testImplementation libs.junit
androidTestImplementation libs.test.ext.junit
androidTestImplementation libs.test.espresso.core
}

View File

@@ -28,7 +28,7 @@ android {
}
dependencies {
implementation 'org.bouncycastle:bcprov-jdk15on:1.70'
implementation 'org.bouncycastle:bcpkix-jdk15on:1.70'
implementation 'androidx.annotation:annotation:1.9.1'
implementation libs.bcprov.jdk15on
implementation libs.bcpkix.jdk15on
implementation libs.annotation
}

View File

@@ -39,8 +39,8 @@ repositories {
}
dependencies {
implementation 'androidx.appcompat:appcompat:1.7.0'
implementation 'com.google.android.material:material:1.12.0'
implementation libs.appcompat
implementation libs.material
// @Hint by SuperMonster003 on Mar 14, 2025.
// ! Dependency "prov" contains "core" (zh-CN: 依赖 "prov" 已包含 "core"):
@@ -48,9 +48,9 @@ dependencies {
// ! | +--- com.madgag.spongycastle:core:1.58.0.0
// ! | \--- junit:junit:4.12 (*)
// # implementation("com.madgag.spongycastle:core:1.58.0.0")
implementation("com.madgag.spongycastle:prov:1.58.0.0")
implementation(libs.prov)
testImplementation 'junit:junit:4.13.2'
androidTestImplementation 'androidx.test.ext:junit:1.2.1'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.6.1'
}
testImplementation libs.junit
androidTestImplementation libs.test.ext.junit
androidTestImplementation libs.test.espresso.core
}

View File

@@ -37,6 +37,6 @@ repositories {
}
dependencies {
implementation 'androidx.appcompat:appcompat:1.7.0'
implementation 'androidx.preference:preference-ktx:1.2.1'
implementation libs.appcompat
implementation libs.preference.ktx
}

View File

@@ -43,15 +43,12 @@ repositories {
}
dependencies {
// implementation "org.jetbrains.kotlin:kotlin-stdlib:${project.ext.kotlinVersion}"
implementation libs.appcompat
implementation libs.commons.lang3
implementation 'androidx.appcompat:appcompat:1.7.0'
implementation 'org.apache.commons:commons-lang3:3.16.0'
testImplementation 'junit:junit:4.13.2'
androidTestImplementation 'androidx.test.ext:junit:1.2.1'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.6.1'
testImplementation libs.junit
androidTestImplementation libs.test.ext.junit
androidTestImplementation libs.test.espresso.core
}
tasks.withType(JavaCompile).configureEach {

View File

@@ -44,14 +44,14 @@ repositories {
}
dependencies {
implementation 'androidx.appcompat:appcompat:1.7.0'
implementation 'androidx.recyclerview:recyclerview:1.4.0'
implementation libs.appcompat
implementation libs.recyclerview
testImplementation 'junit:junit:4.13.2'
testImplementation 'com.pholser:junit-quickcheck-core:0.9.2'
testImplementation 'com.pholser:junit-quickcheck-generators:0.9.1'
testImplementation libs.junit
testImplementation libs.junit.quickcheck.core
testImplementation libs.junit.quickcheck.generators
androidTestImplementation 'androidx.test.ext:junit:1.2.1'
androidTestImplementation 'androidx.test:runner:1.6.2'
androidTestImplementation 'androidx.test:rules:1.6.1'
androidTestImplementation libs.test.ext.junit
androidTestImplementation libs.test.runner
androidTestImplementation libs.test.rules
}

View File

@@ -39,8 +39,8 @@ repositories {
}
dependencies {
implementation 'com.android.support:appcompat-v7:28.0.0'
implementation 'com.android.support:support-annotations:28.0.0'
implementation 'com.android.support:recyclerview-v7:28.0.0'
implementation 'me.zhanghai.android.materialprogressbar:library:1.4.2'
implementation libs.appcompat.v7
implementation libs.support.annotations
implementation libs.recyclerview.v7
implementation libs.materialprogressbar
}

View File

@@ -964,3 +964,15 @@ pluginManagement {
}
}
dependencyResolutionManagement {
repositories {
google()
mavenCentral()
}
versionCatalogs {
create("libs") {
from(files("./gradle/libs.versions.toml"))
}
}
}