plugins { alias(libs.plugins.android.application) alias(libs.plugins.kotlin.android) alias(libs.plugins.ksp) alias(libs.plugins.hilt) } android { namespace = "com.xiaoqu.watch" compileSdk = 36 defaultConfig { applicationId = "com.witClean.watch" minSdk = 27 targetSdk = 27 versionCode = 183 versionName = "2.0.0" testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" } buildTypes { debug { // TODO: 内网测试时改回 http://192.168.1.181:8091/ buildConfigField("String", "SERVICE_URL", "\"https://app.updatexiaoqu.com:9443/\"") // MQTT TCP 连接地址(端口 1883 在 MqttConfig 中定义) buildConfigField("String", "MQTT_HOST", "\"mqtt.ququbranch.com\"") } release { isMinifyEnabled = false proguardFiles( getDefaultProguardFile("proguard-android-optimize.txt"), "proguard-rules.pro" ) buildConfigField("String", "SERVICE_URL", "\"https://app.updatexiaoqu.com:9443/\"") buildConfigField("String", "MQTT_HOST", "\"mqtt.ququbranch.com\"") } } compileOptions { sourceCompatibility = JavaVersion.VERSION_11 targetCompatibility = JavaVersion.VERSION_11 } kotlinOptions { jvmTarget = "11" } buildFeatures { viewBinding = true buildConfig = true } } dependencies { // Core implementation(libs.androidx.core.ktx) implementation(libs.androidx.appcompat) implementation(libs.material) implementation(libs.androidx.activity) implementation(libs.androidx.fragment) implementation(libs.androidx.constraintlayout) implementation(libs.androidx.viewpager2) implementation(libs.androidx.swiperefreshlayout) // Lifecycle implementation(libs.androidx.lifecycle.viewmodel) implementation(libs.androidx.lifecycle.livedata) implementation(libs.androidx.lifecycle.runtime) // Navigation implementation(libs.androidx.navigation.fragment) implementation(libs.androidx.navigation.ui) // Hilt implementation(libs.hilt.android) ksp(libs.hilt.compiler) // Coroutines implementation(libs.kotlinx.coroutines.core) implementation(libs.kotlinx.coroutines.android) // Room implementation(libs.androidx.room.runtime) implementation(libs.androidx.room.ktx) ksp(libs.androidx.room.compiler) // TLS (解决 Android 8.1 连阿里云 OSS HTTPS 握手失败) implementation(libs.conscrypt) // Network implementation(libs.retrofit) implementation(libs.retrofit.converter.gson) implementation(libs.okhttp) implementation(libs.okhttp.logging) implementation(libs.gson) // MQTT implementation(libs.paho.mqtt) // Logging implementation(libs.timber) // QR Code implementation(libs.zxing.core) // Test testImplementation(libs.junit) testImplementation(libs.mockk) testImplementation(libs.kotlinx.coroutines.test) androidTestImplementation(libs.androidx.junit) androidTestImplementation(libs.androidx.espresso.core) }