build.gradle 4.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171
  1. apply plugin: 'com.android.application'
  2. apply plugin: 'kotlin-android'
  3. apply plugin: 'kotlin-kapt'
  4. apply plugin: 'kotlin-android-extensions'
  5. apply plugin: 'androidx.navigation.safeargs.kotlin'
  6. android {
  7. compileSdkVersion build_versions.target_sdk
  8. buildToolsVersion build_versions.build_tools
  9. defaultConfig {
  10. applicationId "com.hanwha.morakmorak"
  11. versionCode 1
  12. versionName "1.0"
  13. vectorDrawables.useSupportLibrary = true
  14. testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
  15. minSdkVersion build_versions.min_sdk
  16. targetSdkVersion build_versions.target_sdk
  17. }
  18. dataBinding {
  19. enabled = true
  20. }
  21. kapt {
  22. generateStubs = true
  23. }
  24. packagingOptions {
  25. exclude 'LICENSE.txt'
  26. exclude 'LICENSE'
  27. exclude 'META-INF/LICENSE'
  28. exclude 'META-INF/LICENSE.txt'
  29. exclude 'META-INF/NOTICE'
  30. exclude 'META-INF/NOTICE.txt'
  31. exclude 'META-INF/rxjava.properties'
  32. }
  33. compileOptions {
  34. sourceCompatibility JavaVersion.VERSION_1_8
  35. targetCompatibility JavaVersion.VERSION_1_8
  36. }
  37. lintOptions {
  38. abortOnError false
  39. disable 'GoogleAppIndexingWarning'
  40. }
  41. testOptions {
  42. unitTests.returnDefaultValues = true
  43. }
  44. buildTypes {
  45. debug {
  46. buildConfigField("String", "BASE_URL", "\"https://unicorn.dpteam.net\"")
  47. }
  48. release {
  49. buildConfigField("String", "BASE_URL", "\"https://api.github.com\"")
  50. minifyEnabled false
  51. proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
  52. }
  53. }
  54. // sourceSets {
  55. // main {
  56. // res.srcDirs = ['src/main/res', 'src/main/res/drawable-hdpi', 'src/main/res/drawable-mdpi', 'src/main/res/drawable-xxhdpi']
  57. // }
  58. // }
  59. }
  60. dependencies {
  61. implementation fileTree(dir: 'libs', include: ['*.jar'])
  62. // Support Libraries
  63. implementation deps.support.app_compat
  64. implementation deps.support.v4
  65. implementation deps.support.design
  66. implementation deps.support.recyclerview
  67. implementation deps.constraint_layout
  68. // Architecture components
  69. implementation deps.lifecycle.runtime
  70. implementation deps.lifecycle.extensions
  71. implementation deps.room.runtime
  72. implementation deps.room.rxjava2
  73. implementation deps.paging_ktx
  74. // Compiler
  75. implementation 'androidx.appcompat:appcompat:1.0.2'
  76. implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
  77. kapt deps.lifecycle.compiler
  78. kapt deps.room.compiler
  79. // RxJava
  80. implementation deps.rx_android
  81. implementation deps.rxjava2
  82. // Kotlin
  83. implementation deps.kotlin.stdlib
  84. // Koin
  85. implementation deps.koin.core
  86. implementation deps.koin.android
  87. implementation deps.koin.viewmodel
  88. implementation deps.koin.architecture
  89. // Retrofit
  90. implementation deps.retrofit.runtime
  91. implementation deps.retrofit.rx_adapter
  92. implementation deps.retrofit.gson
  93. // OkHttp
  94. implementation deps.okhttp_logging_interceptor
  95. // Timber
  96. implementation deps.timber
  97. // PullToRefresh
  98. implementation deps.phoenix
  99. // Spalsh loading progress
  100. implementation deps.fillable_loader
  101. implementation 'com.wang.avi:library:2.1.3'
  102. // Navigation
  103. implementation deps.navigation.fragment
  104. implementation deps.navigation.ui
  105. // Glide
  106. implementation deps.glide.glide
  107. kapt deps.glide.compiler
  108. // JWT
  109. api deps.jwt.api
  110. runtimeOnly deps.jwt.impl
  111. runtimeOnly(deps.jwt.orgjson) {
  112. exclude group: 'org.json', module: 'json' //provided by Android natively
  113. }
  114. // Uncomment the next line if you want to use RSASSA-PSS (PS256, PS384, PS512) algorithms:
  115. //runtimeOnly 'org.bouncycastle:bcprov-jdk15on:1.60'
  116. // Dependencies for local unit tests
  117. testImplementation deps.junit
  118. testImplementation deps.mockito.all
  119. testImplementation deps.hamcrest
  120. testImplementation deps.kotlin.stdlib
  121. testImplementation deps.kotlin.test
  122. testImplementation deps.koin.test, { exclude group: 'org.mockito' }
  123. // Android Testing Support Library's runner and rules
  124. androidTestImplementation deps.axt.runner
  125. androidTestImplementation deps.axt.rules
  126. // Dependencies for Android unit tests
  127. androidTestImplementation deps.junit
  128. androidTestImplementation deps.mockito.core, { exclude group: 'net.bytebuddy' }
  129. // Espresso UI Testing
  130. androidTestImplementation deps.espresso.core
  131. androidTestImplementation deps.espresso.contrib
  132. androidTestImplementation deps.espresso.intents
  133. // Resolve conflicts between main and test APK:
  134. androidTestImplementation deps.support.annotations
  135. androidTestImplementation deps.support.v4
  136. androidTestImplementation deps.support.app_compat
  137. androidTestImplementation deps.support.design
  138. }