refactor: 重构
This commit is contained in:
95
buildGradleScript/app.gradle
Normal file
95
buildGradleScript/app.gradle
Normal file
@@ -0,0 +1,95 @@
|
||||
//****************************************
|
||||
//************ app 壳的配置文件 ************
|
||||
//****************************************
|
||||
|
||||
import com.quyunshuo.androidbaseframemvvm.buildsrc.*
|
||||
|
||||
apply plugin: 'com.android.application'
|
||||
apply plugin: 'kotlin-android'
|
||||
apply plugin: 'com.alibaba.arouter'
|
||||
apply plugin: 'kotlin-kapt'
|
||||
|
||||
android {
|
||||
compileSdkVersion ProjectBuildConfig.compileSdkVersion
|
||||
buildToolsVersion ProjectBuildConfig.buildToolsVersion
|
||||
|
||||
defaultConfig {
|
||||
applicationId ProjectBuildConfig.applicationId
|
||||
minSdkVersion ProjectBuildConfig.minSdkVersion
|
||||
targetSdkVersion ProjectBuildConfig.targetSdkVersion
|
||||
versionCode ProjectBuildConfig.versionCode
|
||||
versionName ProjectBuildConfig.versionName
|
||||
testInstrumentationRunner DependencyConfig.AndroidX.AndroidJUnitRunner
|
||||
multiDexKeepProguard file("multidexKeep.pro")
|
||||
|
||||
ndk {
|
||||
// 设置支持的SO库架构
|
||||
//abiFilters 'armeabi', 'x86', 'armeabi-v7a', 'x86_64', 'arm64-v8a'
|
||||
abiFilters 'armeabi-v7a', 'arm64-v8a', 'x86'
|
||||
}
|
||||
}
|
||||
|
||||
// signingConfigs {
|
||||
// releaseConfig {
|
||||
// storeFile file('')
|
||||
// storePassword ""
|
||||
// keyAlias ""
|
||||
// keyPassword ""
|
||||
// }
|
||||
// }
|
||||
|
||||
buildTypes {
|
||||
release {
|
||||
// signingConfig signingConfigs.releaseConfig
|
||||
minifyEnabled false
|
||||
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
|
||||
applicationVariants.all { variant ->
|
||||
variant.outputs.all { output ->
|
||||
if (outputFileName != null
|
||||
&& outputFileName.endsWith('.apk')
|
||||
&& 'release' == variant.buildType.name) {
|
||||
outputFileName = "${ProjectBuildConfig.applicationId}" +
|
||||
"_${ProjectBuildConfig.versionCode}" +
|
||||
"(${ProjectBuildConfig.versionName}).apk"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
debug {
|
||||
minifyEnabled false
|
||||
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
|
||||
applicationVariants.all { variant ->
|
||||
variant.outputs.all { output ->
|
||||
if (outputFileName != null
|
||||
&& outputFileName.endsWith('.apk')
|
||||
&& 'debug' == variant.buildType.name) {
|
||||
outputFileName = "${ProjectBuildConfig.applicationId}" +
|
||||
"_${ProjectBuildConfig.versionCode}" +
|
||||
"(${ProjectBuildConfig.versionName}).apk"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
compileOptions {
|
||||
sourceCompatibility JavaVersion.VERSION_1_8
|
||||
targetCompatibility JavaVersion.VERSION_1_8
|
||||
}
|
||||
|
||||
kotlinOptions {
|
||||
jvmTarget = '1.8'
|
||||
}
|
||||
}
|
||||
|
||||
dependencies {
|
||||
implementation fileTree(dir: "libs", include: ["*.jar"])
|
||||
|
||||
if (!ProjectBuildConfig.isAppMode) {
|
||||
// 有业务组件时 把这个去掉 这里只是为了使用base里的依赖库
|
||||
implementation project(path: ':lib_common')
|
||||
} else {
|
||||
implementation project(path: ':lib_common')
|
||||
}
|
||||
kapt DependencyConfig.GitHub.AutoServiceAnnotations
|
||||
}
|
||||
44
buildGradleScript/base/base_lib.gradle
Normal file
44
buildGradleScript/base/base_lib.gradle
Normal file
@@ -0,0 +1,44 @@
|
||||
//****************************************
|
||||
//********* lib 模块的公共脚本配置 **********
|
||||
//****************************************
|
||||
|
||||
import com.quyunshuo.androidbaseframemvvm.buildsrc.*
|
||||
|
||||
apply plugin: 'com.android.library'
|
||||
apply plugin: 'kotlin-android'
|
||||
apply plugin: 'kotlin-kapt'
|
||||
|
||||
android {
|
||||
compileSdkVersion ProjectBuildConfig.compileSdkVersion
|
||||
buildToolsVersion ProjectBuildConfig.buildToolsVersion
|
||||
|
||||
defaultConfig {
|
||||
minSdkVersion ProjectBuildConfig.minSdkVersion
|
||||
targetSdkVersion ProjectBuildConfig.targetSdkVersion
|
||||
versionCode ProjectBuildConfig.versionCode
|
||||
versionName ProjectBuildConfig.versionName
|
||||
|
||||
consumerProguardFiles "consumer-rules.pro"
|
||||
|
||||
ndk {
|
||||
// 设置支持的SO库架构
|
||||
//abiFilters 'armeabi', 'x86', 'armeabi-v7a', 'x86_64', 'arm64-v8a'
|
||||
abiFilters 'armeabi-v7a', 'arm64-v8a', 'x86'
|
||||
}
|
||||
}
|
||||
|
||||
compileOptions {
|
||||
sourceCompatibility JavaVersion.VERSION_1_8
|
||||
targetCompatibility JavaVersion.VERSION_1_8
|
||||
}
|
||||
|
||||
kotlinOptions {
|
||||
jvmTarget = JavaVersion.VERSION_1_8.toString()
|
||||
}
|
||||
}
|
||||
|
||||
kapt {
|
||||
arguments {
|
||||
arg("AROUTER_MODULE_NAME", project.getName())
|
||||
}
|
||||
}
|
||||
83
buildGradleScript/base/base_module.gradle
Normal file
83
buildGradleScript/base/base_module.gradle
Normal file
@@ -0,0 +1,83 @@
|
||||
//****************************************
|
||||
//******** module模块的公共脚本配置 *********
|
||||
//****************************************
|
||||
|
||||
import com.quyunshuo.androidbaseframemvvm.buildsrc.*
|
||||
|
||||
apply plugin: 'com.android.library'
|
||||
apply plugin: 'kotlin-android'
|
||||
apply plugin: 'kotlin-kapt'
|
||||
|
||||
android {
|
||||
compileSdkVersion ProjectBuildConfig.compileSdkVersion
|
||||
buildToolsVersion ProjectBuildConfig.buildToolsVersion
|
||||
|
||||
defaultConfig {
|
||||
minSdkVersion ProjectBuildConfig.minSdkVersion
|
||||
targetSdkVersion ProjectBuildConfig.targetSdkVersion
|
||||
versionCode ProjectBuildConfig.versionCode
|
||||
versionName ProjectBuildConfig.versionName
|
||||
testInstrumentationRunner DependencyConfig.AndroidX.AndroidJUnitRunner
|
||||
|
||||
ndk {
|
||||
// 设置支持的SO库架构
|
||||
//abiFilters 'armeabi', 'x86', 'armeabi-v7a', 'x86_64', 'arm64-v8a'
|
||||
abiFilters 'armeabi-v7a', 'arm64-v8a', 'x86'
|
||||
}
|
||||
}
|
||||
|
||||
compileOptions {
|
||||
sourceCompatibility JavaVersion.VERSION_1_8
|
||||
targetCompatibility JavaVersion.VERSION_1_8
|
||||
}
|
||||
|
||||
kotlinOptions {
|
||||
jvmTarget = JavaVersion.VERSION_1_8.toString()
|
||||
}
|
||||
|
||||
buildFeatures {
|
||||
viewBinding = true
|
||||
}
|
||||
|
||||
sourceSets {
|
||||
main {
|
||||
manifest.srcFile 'src/main/AndroidManifest.xml'
|
||||
java {
|
||||
//排除debug文件夹下的所有文件
|
||||
exclude 'debug/**'
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
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'
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
kapt {
|
||||
arguments {
|
||||
arg("AROUTER_MODULE_NAME", project.name)
|
||||
arg("eventBusIndex", "${ProjectBuildConfig.applicationId}.eventbus.index.${project.name}EventIndex")
|
||||
}
|
||||
}
|
||||
|
||||
dependencies {
|
||||
implementation fileTree(dir: 'libs', include: ['*.jar'])
|
||||
|
||||
api project(path: ':lib_common')
|
||||
|
||||
testImplementation DependencyConfig.Android.Junit
|
||||
androidTestImplementation DependencyConfig.AndroidX.TestExtJunit
|
||||
androidTestImplementation DependencyConfig.AndroidX.TestEspresso
|
||||
kapt DependencyConfig.GitHub.GlideCompiler
|
||||
kapt DependencyConfig.GitHub.ARouteCompiler
|
||||
kapt DependencyConfig.GitHub.EventBusAPT
|
||||
kapt DependencyConfig.GitHub.AutoServiceAnnotations
|
||||
}
|
||||
59
buildGradleScript/lib_base.gradle
Normal file
59
buildGradleScript/lib_base.gradle
Normal file
@@ -0,0 +1,59 @@
|
||||
//****************************************
|
||||
//********** lib_base 的配置文件 ***********
|
||||
//****************************************
|
||||
|
||||
apply from: '../buildGradleScript/base/base_lib.gradle'
|
||||
|
||||
import com.quyunshuo.androidbaseframemvvm.buildsrc.*
|
||||
|
||||
android {
|
||||
|
||||
buildFeatures {
|
||||
viewBinding = true
|
||||
}
|
||||
|
||||
resourcePrefix "base_"
|
||||
}
|
||||
|
||||
dependencies {
|
||||
implementation fileTree(dir: "libs", include: ["*.jar"])
|
||||
|
||||
api DependencyConfig.AndroidX.CoreKtx
|
||||
api DependencyConfig.AndroidX.AppCompat
|
||||
api DependencyConfig.AndroidX.ConstraintLayout
|
||||
api DependencyConfig.AndroidX.ActivityKtx
|
||||
api DependencyConfig.AndroidX.FragmentKtx
|
||||
api DependencyConfig.AndroidX.MultiDex
|
||||
|
||||
api DependencyConfig.Android.Material
|
||||
|
||||
api DependencyConfig.Kotlin.Kotlin
|
||||
api DependencyConfig.Kotlin.CoroutinesCore
|
||||
api DependencyConfig.Kotlin.CoroutinesAndroid
|
||||
|
||||
api DependencyConfig.JetPack.LifecycleRuntimeKtx
|
||||
api DependencyConfig.JetPack.LifecycleViewModel
|
||||
api DependencyConfig.JetPack.LifecycleViewModelKtx
|
||||
|
||||
api DependencyConfig.GitHub.Gson
|
||||
api DependencyConfig.GitHub.MMKV
|
||||
api DependencyConfig.GitHub.AutoSize
|
||||
api DependencyConfig.GitHub.Glide
|
||||
api DependencyConfig.GitHub.ARoute
|
||||
api DependencyConfig.GitHub.RecyclerViewAdapter
|
||||
api DependencyConfig.GitHub.StatusBar
|
||||
api DependencyConfig.GitHub.EventBus
|
||||
api DependencyConfig.GitHub.PermissionX
|
||||
api DependencyConfig.GitHub.AutoService
|
||||
|
||||
api DependencyConfig.SDK.TencentBugly
|
||||
api DependencyConfig.SDK.TencentBuglyNative
|
||||
api DependencyConfig.SDK.TencentTBSX5
|
||||
|
||||
kapt DependencyConfig.GitHub.GlideCompiler
|
||||
kapt DependencyConfig.GitHub.ARouteCompiler
|
||||
kapt DependencyConfig.GitHub.EventBusAPT
|
||||
kapt DependencyConfig.GitHub.AutoServiceAnnotations
|
||||
|
||||
debugApi DependencyConfig.GitHub.LeakCanary
|
||||
}
|
||||
34
buildGradleScript/lib_common.gradle
Normal file
34
buildGradleScript/lib_common.gradle
Normal file
@@ -0,0 +1,34 @@
|
||||
//****************************************
|
||||
//********* lib_common 的配置文件 **********
|
||||
//****************************************
|
||||
|
||||
apply from: '../buildGradleScript/base/base_lib.gradle'
|
||||
|
||||
import com.quyunshuo.androidbaseframemvvm.buildsrc.*
|
||||
|
||||
android {
|
||||
|
||||
defaultConfig {
|
||||
// 相关自定义配置
|
||||
resValue "string", "VERSION_STATUS", ProjectBuildConfig.versionStatus
|
||||
resValue "string", "BUGLY_APP_ID", SDKKeyConfig.BUGLY_APP_ID
|
||||
}
|
||||
|
||||
buildFeatures {
|
||||
viewBinding = true
|
||||
}
|
||||
|
||||
resourcePrefix "common_"
|
||||
}
|
||||
|
||||
dependencies {
|
||||
implementation fileTree(dir: "libs", include: ["*.jar"])
|
||||
|
||||
api project(path: ':lib_base')
|
||||
api project(path: ':lib_net')
|
||||
|
||||
kapt DependencyConfig.GitHub.GlideCompiler
|
||||
kapt DependencyConfig.GitHub.ARouteCompiler
|
||||
kapt DependencyConfig.GitHub.EventBusAPT
|
||||
kapt DependencyConfig.GitHub.AutoServiceAnnotations
|
||||
}
|
||||
24
buildGradleScript/lib_net.gradle
Normal file
24
buildGradleScript/lib_net.gradle
Normal file
@@ -0,0 +1,24 @@
|
||||
//****************************************
|
||||
//*********** lib_net 的配置文件 ***********
|
||||
//****************************************
|
||||
|
||||
apply from: '../buildGradleScript/base/base_lib.gradle'
|
||||
|
||||
import com.quyunshuo.androidbaseframemvvm.buildsrc.*
|
||||
|
||||
android {
|
||||
resourcePrefix "net_"
|
||||
}
|
||||
|
||||
dependencies {
|
||||
implementation fileTree(dir: "libs", include: ["*.jar"])
|
||||
|
||||
implementation project(path: ':lib_base')
|
||||
|
||||
api DependencyConfig.GitHub.OkHttp
|
||||
api DependencyConfig.GitHub.OkHttpInterceptorLogging
|
||||
api DependencyConfig.GitHub.Retrofit
|
||||
api DependencyConfig.GitHub.RetrofitConverterGson
|
||||
|
||||
kapt DependencyConfig.GitHub.AutoServiceAnnotations
|
||||
}
|
||||
9
buildGradleScript/module_home.gradle
Normal file
9
buildGradleScript/module_home.gradle
Normal file
@@ -0,0 +1,9 @@
|
||||
//****************************************
|
||||
//******** module_home 的配置文件 *********
|
||||
//****************************************
|
||||
|
||||
apply from: '../buildGradleScript/base/base_module.gradle'
|
||||
|
||||
android {
|
||||
resourcePrefix "home_"
|
||||
}
|
||||
Reference in New Issue
Block a user