Skip to content

Commit 89b56df

Browse files
author
zhangyang06
committed
[feat] 工程toml改造,依赖管理统一化
1 parent 65f78d3 commit 89b56df

File tree

19 files changed

+216
-167
lines changed

19 files changed

+216
-167
lines changed

CoroutineSupport/build.gradle.kts

Lines changed: 14 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -6,22 +6,22 @@ plugins {
66
}
77

88
android {
9-
compileSdkVersion(32)
9+
compileSdk = libs.versions.compileSdk.get().toInt()
1010

1111
defaultConfig {
12-
minSdkVersion(21)
13-
targetSdkVersion(32)
12+
minSdk = libs.versions.minSdk.get().toInt()
13+
targetSdk = libs.versions.targetSdk.get().toInt()
1414
consumerProguardFiles("consumer-rules.pro")
1515
}
1616

1717
buildTypes {
1818
getByName("release") {
1919
proguardFiles(
20-
getDefaultProguardFile("proguard-android-optimize.txt"),
21-
"proguard-rules.pro"
20+
getDefaultProguardFile("proguard-android-optimize.txt"), "proguard-rules.pro"
2221
)
2322
}
2423
}
24+
2525
compileOptions {
2626
sourceCompatibility(JavaVersion.VERSION_1_8)
2727
targetCompatibility(JavaVersion.VERSION_1_8)
@@ -32,15 +32,13 @@ android {
3232
}
3333

3434
dependencies {
35-
implementation("org.jetbrains.kotlin:kotlin-stdlib:${getKotlinPluginVersion()}")
36-
implementation("androidx.core:core-ktx:1.3.2")
37-
implementation("androidx.appcompat:appcompat:1.2.0")
38-
api("org.jetbrains.kotlinx:kotlinx-coroutines-android:1.4.0")
35+
implementation(libs.kotlin.stdlib)
36+
implementation(libs.core.ktx)
37+
implementation(libs.appcompat)
38+
implementation(libs.annotation)
39+
implementation(libs.routerLib)
40+
api(libs.kotlinx.coroutines.android)
3941
testImplementation("junit:junit:4.+")
40-
androidTestImplementation("androidx.test.ext:junit:1.1.2")
41-
androidTestImplementation("androidx.test.espresso:espresso-core:3.3.0")
42-
implementation(project(":RouterAnnotation"))
43-
implementation(project(":RouterLib"))
44-
}
45-
//version = PROJ_VERSION
46-
//group = PROJ_GROUP // Maven Group ID for the artifact,一般填你唯一的包名
42+
androidTestImplementation("androidx.test.ext:junit:1.1.3")
43+
androidTestImplementation("androidx.test.espresso:espresso-core:3.4.0")
44+
}
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
package com.kronos
2+
3+
class Test {
4+
5+
}

RouterLib/build.gradle.kts

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -6,17 +6,17 @@ plugins {
66
}
77

88
android {
9-
compileSdkVersion(32)
9+
compileSdk = libs.versions.compileSdk.get().toInt()
1010

1111
defaultConfig {
12-
minSdkVersion(15)
13-
targetSdkVersion(32)
12+
minSdk=libs.versions.minSdk.get().toInt()
13+
targetSdk = libs.versions.targetSdk.get().toInt()
1414
}
1515
}
1616

1717
dependencies {
18-
compileOnly("androidx.appcompat:appcompat:1.3.0-alpha02")
18+
compileOnly(libs.core.ktx)
1919
compileOnly(project(":EmptyLoader"))
20-
implementation(project(":RouterAnnotation"))
21-
implementation("org.jetbrains.kotlin:kotlin-stdlib-jdk7:${getKotlinPluginVersion()}")
20+
implementation(libs.annotation)
21+
implementation(libs.kotlin.stdlib.jdk7)
2222
}

app/build.gradle.kts

Lines changed: 34 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -4,77 +4,67 @@ plugins {
44
// 这个 id 就是在 versionPlugin 文件夹下 build.gradle.kts.kts.kts.kts 文件内定义的id
55
id("com.android.application")
66
id("kotlin-android")
7+
id("kotlin-android-extensions")
8+
id("kotlin-kapt")
79
id("com.google.devtools.ksp")
810
id("router-register")
911
}
12+
apply {
13+
plugin("kotlin-android")
14+
}
1015

1116
android {
12-
compileSdkVersion(32)
17+
compileSdk = libs.versions.compileSdk.get().toInt()
1318

1419
defaultConfig {
1520
// applicationId("com.kronos.router")
16-
minSdkVersion(21)
21+
minSdk = libs.versions.minSdk.get().toInt()
1722
multiDexEnabled = true
23+
1824
}
1925
buildTypes {
2026
getByName("release") {
2127
// minifyEnabled(false)
2228
proguardFiles(getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro")
2329
}
2430
}
25-
31+
productFlavors {
32+
create("flavor1") {
33+
dimension = "type"
34+
applicationIdSuffix = ".demo"
35+
versionNameSuffix = "-demo"
36+
}
37+
create("flavor2") {
38+
dimension = "type"
39+
}
40+
}
2641
buildFeatures {
2742
viewBinding = true
2843
}
29-
3044
}
3145
dependencies {
3246
implementation(fileTree(mapOf("dir" to "libs", "include" to listOf("*.jar"))))
3347
testImplementation("junit:junit:4.13.2")
34-
implementation("androidx.appcompat:appcompat:1.3.0")
35-
implementation("com.squareup.retrofit2:retrofit:2.9.0")
36-
implementation("org.jetbrains.kotlin:kotlin-stdlib-jdk7:${getKotlinPluginVersion()}")
37-
implementation("androidx.recyclerview:recyclerview:1.2.0")
38-
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-android:1.4.3")
39-
implementation("androidx.lifecycle:lifecycle-livedata-ktx:2.3.1")
40-
implementation("androidx.activity:activity-ktx:1.2.3")
41-
implementation("androidx.fragment:fragment-ktx:1.3.3")
42-
implementation("com.alibaba:fastjson:1.1.72.android")
43-
implementation("androidx.core:core-ktx:1.5.0")
48+
implementation(libs.core.ktx)
49+
50+
implementation(libs.kotlinx.coroutines.android)
51+
implementation(libs.recyclerview)
52+
implementation(libs.kotlin.stdlib.jdk7)
53+
implementation(libs.activity.ktx)
54+
implementation(libs.fragment.ktx)
55+
implementation(libs.retrofit)
56+
implementation(libs.fastjson)
4457
// 如果你不要用transform
4558
val routerVersion = "0.5.1"
46-
implementation("com.github.leifzhang:RouterAnnotation:$routerVersion")
47-
implementation("com.github.leifzhang:RouterLib:$routerVersion")
59+
implementation(libs.annotation)
60+
implementation(libs.routerLib)
4861

49-
implementation("com.github.leifzhang:secondmoudle:$routerVersion")
50-
implementation("com.github.leifzhang:CoroutineSupport:$routerVersion")
51-
// kapt("com.github.leifzhang:compiler:$routerVersion")
52-
53-
val lifecycle_version = "2.3.1"
62+
implementation(project(":secondmoudle"))
63+
implementation(libs.routerCoroutine)
64+
// kapt("libs.compiler:$routerVersion")
5465

5566
// ViewModel
56-
implementation("androidx.lifecycle:lifecycle-viewmodel-ktx:$lifecycle_version")
57-
// LiveData
58-
implementation("androidx.lifecycle:lifecycle-livedata-ktx:$lifecycle_version")
59-
// Lifecycles only (without ViewModel or LiveData)
60-
implementation("androidx.lifecycle:lifecycle-runtime-ktx:$lifecycle_version")
61-
62-
// Saved state module for ViewModel
63-
implementation("androidx.lifecycle:lifecycle-viewmodel-savedstate:$lifecycle_version")
64-
65-
// Annotation processor
66-
// kapt("androidx.lifecycle:lifecycle-compiler:$lifecycle_version")
67-
// alternately - if using Java8, use the following instead of lifecycle-compiler
68-
implementation("androidx.lifecycle:lifecycle-common-java8:$lifecycle_version")
69-
70-
// optional - helpers for implementing LifecycleOwner in a Service
71-
implementation("androidx.lifecycle:lifecycle-service:$lifecycle_version")
72-
73-
// optional - ProcessLifecycleOwner provides a lifecycle for the whole application process
74-
implementation("androidx.lifecycle:lifecycle-process:$lifecycle_version")
75-
76-
// optional - ReactiveStreams support for LiveData
77-
implementation("androidx.lifecycle:lifecycle-reactivestreams-ktx:$lifecycle_version")
78-
67+
implementation(libs.bundles.lifecycles)
68+
kapt(libs.lifecycle.compiler)
7969
ksp(project(":kspCompiler"))
8070
}
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
package com.kronose.sample.debug
2+
3+
4+
import androidx.appcompat.app.AppCompatActivity
5+
6+
/**
7+
*
8+
* @Author LiABao
9+
* @Since 2022/8/14
10+
*
11+
*/
12+
class Test {
13+
14+
fun test(){
15+
16+
}
17+
18+
}
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
package com.kronos.sample.flavor1
2+
3+
/**
4+
*
5+
* @Author LiABao
6+
* @Since 2022/8/15
7+
*
8+
*/
9+
class Flavor1 {
10+
}
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
package com.kronos.sample.flavor2
2+
3+
/**
4+
*
5+
* @Author LiABao
6+
* @Since 2022/8/15
7+
*
8+
*/
9+
class Flavor2 {
10+
}

app/src/main/java/com/kronos/sample/TestActivity.kt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package com.kronos.sample
22

33
import android.app.Activity
4+
import android.content.SharedPreferences
45
import android.os.Bundle
56
import com.kronos.router.BindRouter
67
import com.kronos.sample.databinding.NewActivityBinding
@@ -22,6 +23,6 @@ class TestActivity : Activity() {
2223
setResult(RESULT_OK)
2324
finish()
2425
}
25-
26+
SharedPreferences()
2627
}
2728
}

build.gradle.kts

Lines changed: 7 additions & 66 deletions
Original file line numberDiff line numberDiff line change
@@ -7,22 +7,14 @@ import org.gradle.internal.impldep.org.junit.experimental.categories.Categories.
77

88
plugins {
99
// 这个 id 就是在 versionPlugin 文件夹下 build.gradle 文件内定义的id
10-
id("com.android.application") version ("7.1.1") apply (false)
11-
id("com.android.library") version ("7.1.1") apply (false)
12-
id("org.jetbrains.kotlin.android") version ("1.7.10") apply (false)
13-
id("org.jetbrains.kotlin.jvm") version ("1.7.10") apply (false)
10+
alias(libs.plugins.android.application) apply false
11+
alias(libs.plugins.android.library) apply false
12+
alias(libs.plugins.kotlin.jvm) apply (false)
1413
id("com.google.devtools.ksp") version ("1.7.10-1.0.6") apply (false)
1514
id("router-register") apply false
1615
}
17-
ext {
18-
val routerVersion = rootProject.properties["PROJ_VERSION"] ?: ""
19-
set("routerVersion", routerVersion)
20-
}
16+
2117
allprojects {
22-
repositories {
23-
maven { setUrl("https://maven.aliyun.com/repository/central/") }
24-
google()
25-
}
2618
configurations.all {
2719
resolutionStrategy.dependencySubstitution.all {
2820
if (requested is ModuleComponentSelector) {
@@ -37,12 +29,7 @@ allprojects {
3729
}
3830
}
3931
}
40-
afterEvaluate {
41-
allprojects.forEach {
42-
val depFile = "$rootDir/dependenciesKt.gradle.kts"
43-
it.apply(from = depFile)
44-
}
45-
}
32+
4633

4734
}
4835
subprojects {
@@ -67,51 +54,5 @@ subprojects {
6754
}
6855
group = rootProject.properties["PROJ_GROUP"] ?: ""
6956
version = rootProject.properties["PROJ_VERSION"] ?: ""
70-
}
71-
/*
72-
73-
// 耗时统计kt化
74-
class TimingsListener : TaskExecutionListener, BuildListener {
75-
private var startTime: Long = 0L
76-
private var timings = linkedMapOf<String, Long>()
77-
78-
79-
override fun beforeExecute(task: Task) {
80-
startTime = System.nanoTime()
81-
}
82-
83-
override fun afterExecute(task: Task, state: TaskState) {
84-
val ms = TimeUnit.MILLISECONDS.convert(System.nanoTime() - startTime, TimeUnit.NANOSECONDS)
85-
task.path
86-
timings[task.path] = ms
87-
project.logger.warn("${task.path} took ${ms}ms")
88-
}
89-
90-
override fun buildFinished(result: BuildResult) {
91-
project.logger.warn("Task timings:")
92-
timings.forEach {
93-
if (it.value >= 50) {
94-
project.logger.warn("${it.key} cos ms ${it.value}\n")
95-
}
96-
}
97-
}
98-
99-
override fun buildStarted(gradle: Gradle) {
100-
101-
}
102-
103-
override fun settingsEvaluated(settings: Settings) {
104-
}
105-
106-
override fun projectsLoaded(gradle: Gradle) {
107-
108-
}
109-
110-
override fun projectsEvaluated(gradle: Gradle) {
111-
112-
}
113-
114-
}
115-
116-
gradle.addListener(TimingsListener())
117-
*/
57+
afterEvaluate { }
58+
}

compiler/build.gradle.kts

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -7,12 +7,12 @@ plugins {
77
}
88

99
dependencies {
10-
implementation("com.google.auto.service:auto-service:1.0-rc7")
11-
implementation("com.squareup:javapoet:1.13.0")
12-
implementation("org.apache.commons:commons-lang3:3.9")
13-
implementation("org.apache.commons:commons-collections4:4.1")
14-
implementation(project(":RouterAnnotation"))
10+
implementation(libs.auto.service)
11+
implementation(libs.javapoet)
12+
implementation(libs.commons.lang3)
13+
implementation(libs.commons.collections4)
14+
implementation(libs.annotation)
1515
implementation(files(org.gradle.internal.jvm.Jvm.current().toolsJar))
16-
implementation("org.jetbrains.kotlin:kotlin-stdlib-jdk7:${getKotlinPluginVersion()}")
17-
kapt("com.google.auto.service:auto-service:1.0-rc7")
16+
implementation(libs.kotlin.stdlib.jdk7)
17+
kapt(libs.auto.service)
1818
}

dependencies.gradle

Lines changed: 0 additions & 3 deletions
This file was deleted.

dependenciesKt.gradle.kts

Lines changed: 0 additions & 7 deletions
This file was deleted.

gradle.properties

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,6 @@
1414
# org.gradle.parallel=true
1515
android.enableJetifier=true
1616
android.useAndroidX=true
17-
kapt.use.worker.api=true
1817
kapt.incremental.apt=true
1918
kapt.include.compile.classpath=false
2019
PROJ_GROUP=com.github.leifzhang

0 commit comments

Comments
 (0)