import com.android.build.gradle.LibraryExtension plugins { alias(libs.plugins.android.library) id 'com.google.devtools.ksp' alias(libs.plugins.jetbrains.kotlin.android) id 'maven-publish' // kotlin 序列化注解 id 'kotlin-parcelize' } android { namespace 'com.za.servicing' compileSdk 35 defaultConfig { minSdk 23 testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" consumerProguardFiles "consumer-rules.pro" vectorDrawables { useSupportLibrary true } ndk { abiFilters 'armeabi-v7a', 'arm64-v8a' } multiDexEnabled true } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' } debug { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' } } compileOptions { sourceCompatibility JavaVersion.VERSION_11 targetCompatibility JavaVersion.VERSION_11 } kotlinOptions { jvmTarget = '11' } buildFeatures { compose true buildConfig true // 生成 BuildConfig resValues true // 允许资源值生成 } composeOptions { kotlinCompilerExtensionVersion '1.5.15' } if (project.extensions.getByName("android") is LibraryExtension) { // AGP 7.0+ packaging { resources { excludes += "META-INF/LICENSE" } } } else { // AGP 6.x packagingOptions { exclude("META-INF/LICENSE") } } publishing { singleVariant("release") { withSourcesJar() } } } publishing { publications { release(MavenPublication) { groupId = 'io.github.szl9' artifactId = 'zd_servicing' version = "1.0.3" pom { packaging = "aar" name.set("zd_servicing") description.set("zd_servicing: Library for Android Application") url.set("https://github.com/szl9/4dbki6r4uv.git") inceptionYear.set("2024") licenses { license { name.set("MIT License") url.set("https://opensource.org/licenses/MIT") } } developers { developer { id.set("zd") name.set("zd szl") email.set("17630035658@163.com") } } scm { connection.set("scm:git@github.com:szl9/4dbki6r4uv.git") developerConnection.set("scm:git@github.com:szl9/4dbki6r4uv.git") url.set("https://github.com/szl9/4dbki6r4uv.git") } } // 将 afterEvaluate 移到 publications 块内 afterEvaluate { from components.release // 将依赖项处理放在这里 pom.withXml { def root = asNode() def dependenciesNode = root.dependencies ? root.dependencies[0] : root.appendNode('dependencies') configurations.api.allDependencies.each { dep -> try { if (dep.group != null && dep.name != null && dep.version != null) { def dependencyNode = dependenciesNode.appendNode('dependency') dependencyNode.appendNode('groupId', dep.group) dependencyNode.appendNode('artifactId', dep.name) dependencyNode.appendNode('version', dep.version) dependencyNode.appendNode('scope', 'compile') } } catch (Exception e) { logger.warn("Failed to add dependency ${dep} to POM", e) } } } } } } repositories { maven { name = 'zd_servicing' url = layout.buildDirectory.dir("zd_servicing") } } } tasks.register('generateRepo', Zip) { def publishTask = tasks.named('publishReleasePublicationToZd_servicingRepository') from publishTask.map { it.getRepository().getUrl() } into 'zd_servicing' archiveFileName.set('zd_servicing.zip') } dependencies { api "androidx.core:core-ktx:1.15.0" // coreKtx = "1.15.0" api "androidx.appcompat:appcompat:1.7.0" // appcompat = "1.7.0" api "com.google.android.material:material:1.12.0" // material = "1.12.0" api "androidx.lifecycle:lifecycle-viewmodel-compose:2.8.7" // lifecycleRuntimeKtx = "2.8.7" api "androidx.lifecycle:lifecycle-runtime-ktx:2.8.7" // lifecycleRuntimeKtx = "2.8.7" api "androidx.activity:activity-compose:1.10.0" // activityCompose = "1.10.0" api platform("androidx.compose:compose-bom:2025.01.01") // composeBom = "2025.01.01" api "androidx.compose.ui:ui:1.7.7" // uiVersion = "1.7.7" api "androidx.compose.ui:ui-graphics:1.7.7" // uiGraphics = "1.7.7" api "androidx.compose.ui:ui-tooling-preview:1.7.7" // uiToolingPreview = "1.7.7" api "androidx.compose.material3:material3:1.3.1" // material3="1.3.1" api "androidx.work:work-runtime-ktx:2.10.0" // workRuntimeKtx = "2.10.0" api "androidx.exifinterface:exifinterface:1.3.7" // exifinterface = "1.3.7" testApi "junit:junit:4.13.2" // junit = "4.13.2" androidTestApi "androidx.test.ext:junit:1.2.1" // junitVersion = "1.2.1" androidTestApi "androidx.test.espresso:espresso-core:3.6.1" // espressoCore = "3.6.1" androidTestApi platform("androidx.compose:compose-bom:2025.01.01") // composeBom = "2025.01.01" androidTestApi "androidx.compose.ui:ui-test-junit4:1.7.7" // uiGraphics = "1.7.7" debugApi "androidx.compose.ui:ui-test-manifest:1.7.7" // uiGraphics = "1.7.7" debugApi "androidx.compose.ui:ui-tooling:1.4.0" // From [libraries] ui-tooling, version.ref = "uiToolingVersion", and [versions] uiToolingVersion = "1.4.0" api "io.coil-kt:coil-compose:2.6.0" // coilCompose = "2.6.0" api "io.coil-kt:coil-gif:2.6.0" // coilCompose = "2.6.0" api "com.guolindev.permissionx:permissionx:1.8.0" // permissionx = "1.8.0" api "com.blankj:utilcodex:1.31.1" // utilcodex = "1.31.1" api "com.tencent.bugly:crashreport:4.0.4" // crashreport = "4.0.4" // 高德地图 api "com.amap.api:3dmap:8.1.0" // xdmap = "8.1.0" api "com.amap.api:location:5.6.1" // location = "5.6.1" api "com.amap.api:search:7.3.0" // search = "7.3.0" // JPush api "cn.jiguang.sdk:jpush:5.6.0" // jpush = "5.6.0" api "com.google.code.gson:gson:2.11.0" // gson = "2.11.0" // 网络 api "com.squareup.retrofit2:retrofit:2.9.0" // retrofit = "2.9.0" api "com.squareup.retrofit2:converter-gson:2.9.0" // converterGson = "2.9.0" api "com.squareup.retrofit2:adapter-rxjava3:2.9.0" // From [libraries] adapter-rxjava3, version.ref = "converterGson" api "io.reactivex.rxjava3:rxjava:3.1.7" // rxjava = "3.1.7" api "io.reactivex.rxjava3:rxandroid:3.0.2" // rxandroid = "3.0.2" api "com.squareup.okhttp3:logging-interceptor:4.11.0" // loggingInterceptor = "4.11.0" api "com.alibaba:fastjson:1.2.69" // fastjson = "1.2.69" // 本地数据 api "androidx.room:room-runtime:2.6.1" // roomRuntimeVersion = "2.6.1" annotationProcessor "androidx.room:room-compiler:2.6.1" // roomCompilerVersion = "2.6.1" ksp "androidx.room:room-compiler:2.6.1" // roomCompilerVersion = "2.6.1" api "com.tencent:mmkv:1.3.11" // mmkv = "1.3.11" // 7z api "org.tukaani:xz:1.9" // xz = "1.9" api "org.apache.commons:commons-compress:1.23.0" // commonsCompress = "1.23.0" api "com.google.zxing:core:3.5.3" // core = "3.5.3" api "com.tencent.tbs:tbssdk:44286" // tbssdk = "44286" // CameraX - Assuming all camera dependencies use 'cameraCore' version api "androidx.camera:camera-core:1.4.1" // cameraCore = "1.4.1" api "androidx.camera:camera-camera2:1.4.1" // cameraCore = "1.4.1" api "androidx.camera:camera-lifecycle:1.4.1" // cameraCore = "1.4.1" api "androidx.camera:camera-view:1.4.1" // cameraCore = "1.4.1" api "androidx.camera:camera-extensions:1.4.1" // cameraCore = "1.4.1" api "com.github.bumptech.glide:glide:4.16.0" // glide = "4.16.0" annotationProcessor "com.github.bumptech.glide:compiler:4.14.2" // compiler = "4.14.2" api "org.eclipse.paho:org.eclipse.paho.client.mqttv3:1.2.5" // orgEclipsePahoClientMqttv3 = "1.2.5" api "org.eclipse.paho:org.eclipse.paho.android.service:1.1.1" // orgEclipsePahoAndroidService = "1.1.1" api "com.google.mlkit:face-detection:16.1.7" // faceDetection = "16.1.7" }