
- 移除了不必要的日志库 LogUtil - 添加了高德地图服务并配置了相关权限 - 更新了 API 接口定义,统一添加了前缀 -重构了 AppConfig 类,使用 native代码获取配置信息 - 更新了项目构建配置,支持 native 代码编译 - 优化了部分代码结构,提高了代码的可维护性
237 lines
8.9 KiB
Groovy
237 lines
8.9 KiB
Groovy
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"
|
|
}
|
|
|