base_module.gradle 2.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  1. //****************************************
  2. //******** module模块的公共脚本配置 *********
  3. //****************************************
  4. import com.quyunshuo.androidbaseframemvvm.buildsrc.*
  5. android {
  6. compileSdk ProjectBuildConfig.compileSdkVersion
  7. defaultConfig {
  8. minSdk ProjectBuildConfig.minSdkVersion
  9. targetSdk ProjectBuildConfig.targetSdkVersion
  10. versionCode ProjectBuildConfig.versionCode
  11. versionName ProjectBuildConfig.versionName
  12. testInstrumentationRunner DependencyConfig.AndroidX.AndroidJUnitRunner
  13. ndk {
  14. // 设置支持的SO库架构
  15. //abiFilters 'armeabi', 'x86', 'armeabi-v7a', 'x86_64', 'arm64-v8a'
  16. abiFilters 'armeabi-v7a', 'arm64-v8a', 'x86'
  17. }
  18. }
  19. compileOptions {
  20. sourceCompatibility JavaVersion.VERSION_17
  21. targetCompatibility JavaVersion.VERSION_17
  22. }
  23. kotlinOptions {
  24. jvmTarget = "17"
  25. }
  26. buildFeatures {
  27. viewBinding = true
  28. }
  29. sourceSets {
  30. main {
  31. manifest.srcFile 'src/main/AndroidManifest.xml'
  32. java {
  33. //排除debug文件夹下的所有文件
  34. exclude 'debug/**'
  35. }
  36. }
  37. }
  38. buildTypes {
  39. // 对应 ALPHA 版本
  40. debug {
  41. buildConfigField "String", "VERSION_TYPE", "\"${ProjectBuildConfig.Version.ALPHA}\""
  42. minifyEnabled false
  43. proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
  44. }
  45. beta {
  46. buildConfigField "String", "VERSION_TYPE", "\"${ProjectBuildConfig.Version.BETA}\""
  47. minifyEnabled false
  48. proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
  49. }
  50. release {
  51. buildConfigField "String", "VERSION_TYPE", "\"${ProjectBuildConfig.Version.RELEASE}\""
  52. minifyEnabled false
  53. proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
  54. }
  55. }
  56. }
  57. kapt {
  58. arguments {
  59. arg("AROUTER_MODULE_NAME", project.name)
  60. arg("eventBusIndex", "${ProjectBuildConfig.applicationId}.eventbus.index.${project.name}EventIndex")
  61. }
  62. }
  63. dependencies {
  64. implementation fileTree(dir: 'libs', include: ['*.jar'])
  65. api project(path: ':lib_common')
  66. testImplementation DependencyConfig.Android.Junit
  67. androidTestImplementation DependencyConfig.AndroidX.TestExtJunit
  68. androidTestImplementation DependencyConfig.AndroidX.TestEspresso
  69. implementation DependencyConfig.JetPack.HiltCore
  70. kapt DependencyConfig.GitHub.ARouteCompiler
  71. kapt DependencyConfig.GitHub.EventBusAPT
  72. kapt DependencyConfig.GitHub.AutoServiceAnnotations
  73. kapt DependencyConfig.JetPack.HiltApt
  74. kapt DependencyConfig.JetPack.LifecycleCompilerAPT
  75. }