plugins { id 'com.android.application' id 'org.jetbrains.kotlin.android' id 'kotlin-kapt' id 'com.google.dagger.hilt.android' id 'kotlin-parcelize' } android { namespace 'com.king.template' compileSdk build_versions.compileSdk defaultConfig { applicationId "com.king.template" minSdk build_versions.minSdk targetSdk build_versions.targetSdk versionCode app_version.versionCode versionName app_version.versionName ndk { //设置支持的SO库架构(开发者可以根据需要,选择一个或多个平台的so) abiFilters "armeabi-v7a","x86_64" //, "arm64-v8a""x86", } vectorDrawables { useSupportLibrary true } } packagingOptions { exclude 'META-INF/*.kotlin_module' } if(rootProject.ext.signingEnabled){ signingConfigs { config { //加载配置资源 Properties properties = new Properties() InputStream inputStream = rootProject.file('local.properties').newDataInputStream() properties.load( inputStream ) //读取配置文件 def storeFileDir = properties.getProperty('storeFile.file') storeFile file( storeFileDir ) //读取配置字段 def key_keyAlias = properties.getProperty('keyAlias') def key_keyPassword = properties.getProperty('keyPassword') def key_storePassword = properties.getProperty('storePassword') keyAlias key_keyAlias keyPassword key_keyPassword storePassword key_storePassword } } } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' if (rootProject.ext.signingEnabled) { signingConfig signingConfigs.config } } } lintOptions { abortOnError false warning 'InvalidPackage' } buildFeatures { dataBinding = true } compileOptions { targetCompatibility JavaVersion.VERSION_17 sourceCompatibility JavaVersion.VERSION_17 } kotlinOptions { jvmTarget = JavaVersion.VERSION_17.toString() } // flavorDimensions "flavor" // productFlavors { // // 正式 // flavors_release { // dimension "flavor" // } // // 开发 // flavors_dev { // dimension "flavor" // } // } } dependencies { implementation "androidx.core:core-ktx:$versions.coreKtx" implementation "com.google.android.material:material:$versions.material" implementation "androidx.constraintlayout:constraintlayout:$versions.constraintlayout" implementation "androidx.recyclerview:recyclerview:$versions.recyclerview" testImplementation "junit:junit:$versions.junit" androidTestImplementation "androidx.test.ext:junit:$versions.androidExtJunit" androidTestImplementation "androidx.test.espresso:espresso-core:$versions.espressoCore" // implementation "org.jetbrains.kotlinx:kotlinx-coroutines-core:$versions.kotlinxCoroutines" // implementation "org.jetbrains.kotlinx:kotlinx-coroutines-android:$versions.kotlinxCoroutines" // implementation "androidx.lifecycle:lifecycle-runtime-ktx:$versions.lifecycleKtx" // implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:$versions.lifecycleKtx" //room kapt "androidx.room:room-compiler:$versions.room" //hilt implementation "com.google.dagger:hilt-android:$versions.daggerHilt" kapt "com.google.dagger:hilt-compiler:$versions.daggerHilt" implementation "com.github.jenly1314:mvvmframe:$versions.mvvmframe" //app-updater implementation "com.github.jenly1314.AppUpdater:app-updater:$versions.appUpdater" //app-dialog implementation "com.github.jenly1314.AppUpdater:app-dialog:$versions.appUpdater" implementation "com.github.jenly1314:NeverCrash:$versions.nevercrash" implementation "com.github.jenly1314:BaseUrlManager:$versions.baseUrlManager" implementation "com.github.jenly1314:SuperTextView:$versions.superTextView" implementation "com.github.jenly1314:logx:$versions.logx" implementation "io.github.cymchad:BaseRecyclerViewAdapterHelper:$versions.brvah" implementation "io.github.scwang90:refresh-layout-kernel:$versions.smartRefreshLayout" implementation "io.github.scwang90:refresh-header-material:$versions.smartRefreshLayout" implementation "io.github.scwang90:refresh-footer-classics:$versions.smartRefreshLayout" // implementation "io.github.scwang90:SmartRefreshLayout:$versions.smartRefreshLayout" // implementation "io.github.scwang90:SmartRefreshHeader:$versions.smartRefreshLayout" implementation "com.github.bumptech.glide:glide:$versions.glide" kapt "com.github.bumptech.glide:compiler:$versions.glide" implementation "com.tencent:mmkv:$versions.mmkv" //leakCanary debugImplementation "com.squareup.leakcanary:leakcanary-android:$versions.leakcanary" implementation "de.hdodenhof:circleimageview:$versions.circleimageview" implementation "io.github.youth5201314:banner:$versions.banner" implementation "com.github.JessYanCoding:AndroidAutoSize:$versions.autosize" implementation "io.github.androidktx:android-ktx:$versions.androidktx" implementation "com.github.AndroidUtil:AndroidUtil:$versions.androidutil" implementation "androidx.startup:startup-runtime:$versions.startup" implementation "com.github.jenly1314:kvcache:$versions.kvcache" implementation "com.github.jenly1314:imageviewer:$versions.imageviewer" // implementation "com.github.jenly1314:GuidePage:$versions.guidepage" // implementation "de.hdodenhof:circleimageview:$versions.circleimageview" // // implementation "com.github.chrisbanes:PhotoView:$versions.photoView" // // debugImplementation "com.amitshekhar.android:debug-db:$versions.debugDb" implementation project(":lib-umeng") } if(rootProject.ext.tinkerEnabled){ apply from: 'tinker-support.gradle' }