apply plugin: 'com.android.application' apply plugin: 'kotlin-android' apply plugin: 'kotlin-kapt' android { namespace 'com.snc.evivecharger' compileSdk rootProject.ext.android.compileSdk defaultConfig { applicationId rootProject.ext.android.applicationId minSdk rootProject.ext.android.minSdk targetSdk rootProject.ext.android.targetSdk versionCode rootProject.ext.android.versionCode versionName rootProject.ext.android.versionName multiDexEnabled rootProject.ext.android.multiDexEnabled //阿里路由框架配置 javaCompileOptions { annotationProcessorOptions { arguments = [AROUTER_MODULE_NAME: project.getName()] } } kapt { arguments { arg("AROUTER_MODULE_NAME", project.getName()) } } testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' } } compileOptions { sourceCompatibility JavaVersion.VERSION_17 targetCompatibility JavaVersion.VERSION_17 } buildFeatures { //这2个为非必选,想用哪个就保留那个 用的话一定要加上项目中的 ViewBinding & DataBinding 混淆规则 dataBinding = true viewBinding = true } // APK 签名的那些事:https://www.jianshu.com/p/a1f8e5896aa2 signingConfigs { config { storeFile file('EViveCharger.jks') storePassword 'snc123456' keyAlias 'snc' keyPassword 'snc123456' } debug { storeFile file('EViveCharger.jks') storePassword 'snc123456' keyAlias 'snc' keyPassword 'snc123456' } } buildTypes { debug { debuggable true jniDebuggable true // 移除无用的资源文件 shrinkResources false //设置混淆 minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' signingConfig signingConfigs.config } // APK 签名的那些事:https://www.jianshu.com/p/a1f8e5896aa2 release { debuggable false jniDebuggable false // 移除无用的资源文件 shrinkResources true // 设置混淆 minifyEnabled true proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' signingConfig signingConfigs.config } } applicationVariants.all { variant -> // Apk 输出文件名配置 variant.outputs.all { output -> outputFileName = "EVive-Charger_" + variant.buildType.name + "_V" + variant.versionName + "-" + new Date().format('YYYYMMdd') + ".apk" } } //邮箱问题添加 packagingOptions { exclude 'META-INF/NOTICE.md' exclude 'META-INF/LICENSE.md' } } dependencies { //宿主项目中判断组件是否需要独立运行 if (isModule.toBoolean()) { //组件独立运行时,宿主项目直接依赖基础库,避免编译错误 implementation project(':lib_base') } else { api project(':lib_base') implementation project(':login') implementation project(':mian') implementation project(':home') implementation project(':history') implementation project(':settings') implementation project(':wifi') implementation project(':web') implementation project(':schedules') implementation project(':alarm') implementation project(':ble') } kapt 'com.alibaba:arouter-compiler:1.5.2' testImplementation 'junit:junit:4.13.2' androidTestImplementation 'androidx.test.ext:junit:1.1.5' androidTestImplementation 'androidx.test.espresso:espresso-core:3.5.1' }