Newer
Older
SmartTown / app / build.gradle
import java.text.SimpleDateFormat

apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'

android {
    signingConfigs {
        release {
            storeFile file('SmartTown.jks')
            storePassword '123456789'
            keyAlias 'key0'
            keyPassword '123456789'
        }
    }

    compileSdkVersion 33

    defaultConfig {
        applicationId "com.casic.smart.town.sanxi"
        minSdkVersion 23
        targetSdkVersion 33
        versionCode 1
        versionName "1.0.0.1"
    }

    buildTypes {
        release {
            minifyEnabled false
            signingConfig signingConfigs.release
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'

            ndk { abiFilters "armeabi-v7a", "arm64-v8a" }
        }
    }
    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }

    kotlin {
        experimental {
            coroutines 'enable'
        }
    }

    viewBinding {
        enabled true
    }

    applicationVariants.configureEach { variant ->
        variant.outputs.configureEach {
            outputFileName = "SX_" + getBuildDate() + "_" + defaultConfig.versionName + ".apk"
        }
    }
}

static def getBuildDate() {
    SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMdd", Locale.CHINA)
    return dateFormat.format(System.currentTimeMillis())
}

dependencies {
    implementation fileTree(include: ['*.jar'], dir: 'libs')
    //基础依赖库
    implementation 'com.github.AndroidCoderPeng:Kotlin-lite-lib:1.0.5'
    implementation 'androidx.appcompat:appcompat:1.6.1'
    implementation 'androidx.core:core-ktx:1.9.0'
    //Google官方授权框架
    implementation 'pub.devrel:easypermissions:3.0.0'
    //腾讯Android UI框架
    implementation 'com.qmuiteam:qmui:2.0.0-alpha10'
    implementation 'com.qmuiteam:arch:0.3.1'
    //沉浸式状态栏。基础依赖包,必须要依赖
    implementation 'com.gyf.immersionbar:immersionbar:3.0.0'
    //fragment快速实现
    implementation 'com.gyf.immersionbar:immersionbar-components:3.0.0'
    //MVVM+LiveData
    implementation "androidx.lifecycle:lifecycle-livedata-ktx:2.5.1"
    implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.5.1"
    implementation "androidx.lifecycle:lifecycle-extensions:2.2.0"
    //Kotlin协程
    implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.5.0'
    implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.6.1'
    //图片加载框架
    implementation 'com.github.bumptech.glide:glide:4.9.0'
    //图片选择框架
    implementation 'io.github.lucksiege:pictureselector:v3.0.4'
    //返回值转换器
    implementation 'com.jakewharton.retrofit:retrofit2-kotlin-coroutines-adapter:0.9.2'
    implementation 'com.squareup.retrofit2:converter-scalars:2.3.0'
    implementation 'com.squareup.retrofit2:converter-gson:2.8.1'
    //okhttp3日志拦截器
    implementation 'com.squareup.okhttp3:logging-interceptor:4.6.0'
    //网络请求和接口封装
    implementation 'com.squareup.retrofit2:retrofit:2.9.0'
    implementation 'com.squareup.okhttp3:okhttp:4.9.0'
    //官方Json解析库
    implementation 'com.google.code.gson:gson:2.10.1'
    //上拉加载下拉刷新
    implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0'
    //高德导航、定位、地图三合一
    implementation 'com.amap.api:navi-3dmap:latest.integration'
    //桌面角标
    implementation "me.leolin:ShortcutBadger:1.1.22@aar"
    //图表
    implementation 'com.github.PhilJay:MPAndroidChart:v3.1.0'
    //图片压缩
    implementation 'top.zibin:Luban:1.1.8'
}