build.gradle 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129
  1. if (componentTag) {
  2. apply plugin: 'com.android.application'
  3. apply plugin: 'com.enation.javashop.aspectjrt'
  4. } else {
  5. apply plugin: 'com.android.library'
  6. }
  7. apply plugin: 'kotlin-android'
  8. apply plugin: 'kotlin-android-extensions'
  9. apply plugin: 'kotlin-kapt'
  10. kapt {
  11. arguments {
  12. arg("moduleName", project.getName())
  13. }
  14. }
  15. android {
  16. compileSdkVersion target_sdk_version
  17. buildToolsVersion build_tools_version
  18. defaultConfig {
  19. if (componentTag) {
  20. applicationId "com.wdkl.ncs.android.component.home"
  21. multiDexEnabled true
  22. }
  23. minSdkVersion min_sdk_version
  24. targetSdkVersion target_sdk_version
  25. versionCode app_version_code
  26. versionName app_version
  27. dataBinding {
  28. enabled = true
  29. }
  30. testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
  31. }
  32. lintOptions {
  33. abortOnError false
  34. }
  35. buildTypes {
  36. release {
  37. minifyEnabled false
  38. proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
  39. }
  40. }
  41. sourceSets {
  42. main.java.srcDirs += 'src/main/code'
  43. if (componentTag) {
  44. main.manifest.srcFile 'src/main/ApkBuildDir/AndroidManifest.xml'
  45. } else {
  46. main.manifest.srcFile 'src/main/AndroidManifest.xml'
  47. main.java {
  48. exclude 'apkbuild/**'
  49. }
  50. }
  51. }
  52. }
  53. dependencies {
  54. implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
  55. compile fileTree(dir: 'libs', include: ['*.jar'])
  56. androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
  57. exclude group: 'com.android.support', module: 'support-annotations'
  58. })
  59. /**
  60. * 单元测试
  61. */
  62. testCompile 'junit:junit:4.12'
  63. /**
  64. * Android基础依赖库
  65. */
  66. compile "com.android.support:design:$support_library_version"
  67. compile "com.android.support:support-v4:$support_library_version"
  68. compile "com.android.support:cardview-v7:$support_library_version"
  69. compile "com.android.support:appcompat-v7:$support_library_version"
  70. /**
  71. * 公共库依赖
  72. */
  73. compile project(':middleware')
  74. if (componentTag) {
  75. debugCompile 'com.squareup.leakcanary:leakcanary-android:1.5.1'
  76. releaseCompile 'com.squareup.leakcanary:leakcanary-android-no-op:1.5.1'
  77. testCompile 'com.squareup.leakcanary:leakcanary-android-no-op:1.5.1'
  78. }
  79. /**
  80. * Dagger编译依赖
  81. */
  82. kapt 'com.google.dagger:dagger-compiler:2.7'
  83. /**
  84. * Kotlin依赖
  85. */
  86. kapt 'com.android.databinding:compiler:2.3.3'
  87. /**
  88. * 路由注解处理器
  89. */
  90. kapt "com.enation.geamtear:jrouter-compiler:$router_version"
  91. /**
  92. * constraint-layout布局依赖
  93. */
  94. implementation 'com.android.support.constraint:constraint-layout:1.1.0-beta5'
  95. implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
  96. compile project(':starRTC')
  97. }
  98. /**
  99. * kawo组件化框架配置
  100. */
  101. if (componentTag) {
  102. kawo {
  103. /**
  104. * Aop注解排除Jar
  105. */
  106. aspectExcludeJarFilter 'com.enation.geamtear.pay', 'AlipaySdk'
  107. }
  108. }
  109. repositories {
  110. mavenCentral()
  111. }