module.build.gradle 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116
  1. if (singleModule.toBoolean()) {
  2. // 作为独立app应用运行
  3. apply plugin: 'com.android.application'
  4. } else {
  5. // 作为组件运行
  6. apply plugin: 'com.android.library'
  7. }
  8. apply plugin: 'kotlin-android'
  9. // ARouter
  10. apply plugin: 'kotlin-kapt'
  11. /*序列化插件*/
  12. apply plugin: 'kotlin-parcelize'
  13. kapt {
  14. arguments {
  15. arg("AROUTER_MODULE_NAME", project.getName())
  16. }
  17. }
  18. def singleRun = singleModule.toBoolean()
  19. android {
  20. compileSdkVersion rootProject.ext.android.compileSdkVersion
  21. buildToolsVersion rootProject.ext.android.buildToolsVersion
  22. defaultConfig {
  23. // 如果是独立模块,则使用当前组件的包名
  24. if (singleRun) {
  25. applicationId rootProject.ext.android.applicationId
  26. }
  27. minSdkVersion rootProject.ext.android.minSdkVersion
  28. targetSdkVersion rootProject.ext.android.targetSdkVersion
  29. versionCode rootProject.ext.android.versionCode
  30. versionName rootProject.ext.android.versionName
  31. flavorDimensions "versionCode"
  32. testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
  33. vectorDrawables.useSupportLibrary = true
  34. multiDexEnabled true
  35. // 只保留指定和默认的资源
  36. resConfigs "zh"//去掉无用的国际语言
  37. ndk {
  38. abiFilters 'armeabi', 'armeabi-v7a', 'arm64-v8a'
  39. }
  40. generatedDensities = []
  41. }
  42. buildTypes {
  43. debug {
  44. minifyEnabled false // 打开混淆
  45. shrinkResources false // 是否清理无用资源,依赖于minifyEnabled
  46. zipAlignEnabled false // 是否启用zipAlign压缩
  47. // buildConfigField "String", "BAIDU_APPID", "\"37371987\""
  48. // buildConfigField "String", "BAIDU_APPKEY", "\"RzdZg1lVNxAB1NpQi0SSwLIe\""
  49. // buildConfigField "String", "BAIDU_SECRETKEY", "\"4AfYdqAyA9PtLOoNFFsyUogDfxoMBmqS\""
  50. proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
  51. debuggable true
  52. }
  53. release {
  54. minifyEnabled false // 打开混淆
  55. shrinkResources false // 是否清理无用资源,依赖于minifyEnabled
  56. zipAlignEnabled false // 是否启用zipAlign压缩
  57. // buildConfigField "String", "BAIDU_APPID", "\"37371987\""
  58. // buildConfigField "String", "BAIDU_APPKEY", "\"RzdZg1lVNxAB1NpQi0SSwLIe\""
  59. // buildConfigField "String", "BAIDU_SECRETKEY", "\"4AfYdqAyA9PtLOoNFFsyUogDfxoMBmqS\""
  60. proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
  61. debuggable true
  62. }
  63. }
  64. compileOptions {
  65. sourceCompatibility JavaVersion.VERSION_1_8
  66. targetCompatibility JavaVersion.VERSION_1_8
  67. }
  68. kotlinOptions {
  69. jvmTarget = '1.8'
  70. }
  71. buildFeatures {
  72. dataBinding true
  73. }
  74. sourceSets {
  75. main {
  76. jniLibs.srcDirs = ['libs']
  77. if (singleRun) {
  78. // 如果是application,则 编译主目录下AndroidManifest.xml文件
  79. manifest.srcFile 'src/main/AndroidManifest.xml'
  80. } else {
  81. // 如果是library,合并到宿主,则 编译manifest目录下AndroidManifest.xml文件
  82. manifest.srcFile 'src/main/manifest/AndroidManifest.xml'
  83. resources {
  84. // 正式版本时,排除manifest文件夹下所有的调试文件
  85. exclude 'src/main/manifest/*'
  86. }
  87. }
  88. }
  89. }
  90. }
  91. dependencies {
  92. // 基类lib包
  93. implementation project(path: ':baselib')
  94. // ARtouter
  95. implementation(rootProject.ext.dependencies.arouter_api)
  96. kapt(rootProject.ext.dependencies.arouter_compiler)
  97. api( rootProject.ext.androidx.kotlin_lib )
  98. api( rootProject.ext.androidx.kotlin_core )
  99. api( rootProject.ext.androidx.appcompat )
  100. api( rootProject.ext.androidx.material )
  101. api( rootProject.ext.androidx.constraintlayout)
  102. testApi( rootProject.ext.androidx.junit )
  103. androidTestApi( rootProject.ext.androidx.runner )
  104. androidTestApi( rootProject.ext.androidx.espresso_core )
  105. api 'com.github.bumptech.glide:glide:4.12.0'
  106. annotationProcessor 'com.github.bumptech.glide:compiler:4.12.0'
  107. }