build.gradle 7.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213
  1. apply plugin: 'com.android.application'
  2. apply plugin: 'io.fabric'
  3. apply plugin: 'kotlin-android'
  4. apply plugin: 'kotlin-android-extensions'
  5. android {
  6. signingConfigs {
  7. debug {
  8. keyAlias 'mcare-plus-severance'
  9. keyPassword 'mcare-plus-severance'
  10. storePassword 'mcare-plus-severance'
  11. storeFile file('../mcare-plus-severance.jks')
  12. }
  13. }
  14. compileSdkVersion 28
  15. flavorDimensions "mcareplus"
  16. defaultConfig {
  17. applicationId "com.lemonhc.mplus"
  18. minSdkVersion 21
  19. targetSdkVersion 28
  20. multiDexEnabled true
  21. testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
  22. testInstrumentationRunnerArguments clearPackageData: 'true'
  23. }
  24. compileOptions {
  25. sourceCompatibility JavaVersion.VERSION_1_8
  26. targetCompatibility JavaVersion.VERSION_1_8
  27. }
  28. packagingOptions {
  29. exclude 'META-INF/NOTICE'
  30. exclude 'META-INF/LICENSE'
  31. exclude 'META-INF/notice'
  32. exclude 'META-INF/notice.txt'
  33. exclude 'META-INF/license'
  34. exclude 'META-INF/license.txt'
  35. }
  36. productFlavors {
  37. // 파티마 개발 .fatima.dev // 운영 .fatima
  38. //사내개발
  39. fatima_dev {
  40. applicationIdSuffix ".fatima.standard.dev"
  41. versionCode = 4
  42. versionName = "4"
  43. }
  44. //파티마개발
  45. fatima_inhouse {
  46. applicationIdSuffix ".fatima.local"
  47. versionCode = 8
  48. versionName = "8"
  49. }
  50. //파티마운영
  51. fatima_product {
  52. applicationIdSuffix ".fatima.standard"
  53. versionCode = 4
  54. versionName = "4"
  55. }
  56. }
  57. sourceSets {
  58. fatima_dev {
  59. manifest.srcFile("src/fatima_product/AndroidManifest.xml")
  60. java.srcDirs = ['src/main/java', 'src/fatima_dev/java', 'src/barcode_m3mobile/java']
  61. res.srcDirs = ['src/fatima_dev/res', 'src/stt_naver/res']
  62. }
  63. fatima_inhouse {
  64. manifest.srcFile("src/fatima_product/AndroidManifest.xml")
  65. java.srcDirs = ['src/main/java', 'src/fatima_local/java', 'src/barcode_m3mobile/java']
  66. res.srcDirs = ['src/fatima_local/res' ]
  67. }
  68. fatima_product {
  69. manifest.srcFile("src/fatima_product/AndroidManifest.xml")
  70. java.srcDirs = ['src/main/java', 'src/fatima_product/java', 'src/barcode_m3mobile/java']
  71. res.srcDirs = ['src/fatima_product/res']
  72. }
  73. main {
  74. java.srcDirs = ['src/main/java', 'src/test/java']
  75. resources.srcDirs = ['src/main/resources', 'src/androidTest/resources/']
  76. }
  77. }
  78. buildTypes {
  79. debug{
  80. minifyEnabled false
  81. proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
  82. signingConfig signingConfigs.debug // 서명 설정
  83. ndk {
  84. abiFilters "armeabi-v7a", "armeabi" // includes ARM SO files only, so no x86 SO file
  85. }
  86. }
  87. release {
  88. minifyEnabled true
  89. proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
  90. ndk {
  91. abiFilters "armeabi-v7a", "armeabi" // includes ARM SO files only, so no x86 SO file
  92. }
  93. }
  94. }
  95. testOptions {
  96. unitTests.returnDefaultValues = true
  97. }
  98. lintOptions {
  99. abortOnError false
  100. }
  101. }
  102. dependencies {
  103. implementation fileTree(dir: 'libs', include: ['*.jar'])
  104. // test implementation
  105. implementation 'junit:junit:4.12'
  106. implementation 'androidx.annotation:annotation:1.0.0'
  107. testImplementation "org.jetbrains.kotlin:kotlin-test:$kotlin_version"
  108. testImplementation "org.jetbrains.kotlin:kotlin-test-junit:$kotlin_version"
  109. androidTestImplementation 'androidx.test:runner:1.1.1'
  110. androidTestImplementation 'androidx.test:rules:1.1.1'
  111. androidTestUtil 'androidx.test:orchestrator:1.1.1'
  112. // https://mvnrepository.com/artifact/commons-codec/commons-codec
  113. implementation('com.crashlytics.sdk.android:crashlytics:2.6.7@aar') {
  114. transitive = true
  115. }
  116. implementation 'com.google.android.material:material:1.0.0'
  117. implementation 'com.google.android.gms:play-services:12.0.1'
  118. implementation 'com.google.code.gson:gson:2.8.2'
  119. implementation 'org.apache.maven:maven-artifact:3.3.9'
  120. implementation 'commons-codec:commons-codec:1.9'
  121. implementation 'com.github.beyka:androidtiffbitmapfactory:0.9.1'
  122. // implementation 'com.github.ajalt.reprint:core:3.2.1@aar'
  123. implementation 'androidx.multidex:multidex:2.0.0'
  124. implementation 'com.github.ajalt.reprint:core:3.3.2@aar' // required: supports marshmallow devices
  125. implementation 'com.github.ajalt.reprint:reprint_spass:3.3.2@aar' // optional: deprecated support for pre-marshmallow Samsung devices
  126. implementation 'com.github.ajalt.reprint:rxjava:3.3.2@aar' // optional: the RxJava 1 interface
  127. implementation 'com.github.ajalt.reprint:rxjava2:3.3.2@aar' // optional: the RxJava 2 interface
  128. //zxing
  129. implementation 'com.journeyapps:zxing-android-embedded:3.2.0@aar'
  130. implementation 'com.google.zxing:core:3.3.3'
  131. //kotlin and logger
  132. implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
  133. implementation "org.jetbrains.anko:anko-commons:$anko_version"
  134. //picasso is imageLoader
  135. implementation 'com.squareup.picasso:picasso:2.71828'
  136. //coroutines
  137. implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.0.1'
  138. //constraint
  139. implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
  140. //photoView - is pinch zoom
  141. implementation 'com.github.chrisbanes:PhotoView:1.3.0'
  142. //network library
  143. implementation "com.github.kittinunf.fuel:fuel-android:$fuel_version"
  144. //livedata is rx programing
  145. implementation 'androidx.lifecycle:lifecycle-extensions:2.0.0'
  146. implementation 'androidx.appcompat:appcompat:1.0.0'
  147. implementation 'androidx.cardview:cardview:1.0.0'
  148. implementation 'com.sdsmdg.harjot:vectormaster:1.1.3'
  149. // 빈생성 헬프를 위한 롬복
  150. compileOnly 'org.projectlombok:lombok:1.18.10'
  151. annotationProcessor 'org.projectlombok:lombok:1.18.10'
  152. //파티마병원 전용단말 (M3Mobile)
  153. fatima_devImplementation files(
  154. 'libs/M3SDK.jar'
  155. )
  156. fatima_inhouseImplementation files(
  157. 'libs/M3SDK.jar'
  158. )
  159. fatima_productImplementation files(
  160. 'libs/M3SDK.jar'
  161. )
  162. //http 통신
  163. implementation('com.squareup.retrofit2:retrofit:2.6.2') {
  164. exclude module: 'okhttp'
  165. }
  166. implementation 'com.squareup.retrofit2:converter-gson:2.6.2'
  167. implementation 'com.squareup.okhttp3:okhttp:4.2.2'
  168. implementation 'com.squareup.okhttp3:logging-interceptor:4.2.2' // logging-interceptor는 반환된 모든 응답에 대해 로그 문자열을 생성합니다.
  169. implementation 'org.conscrypt:conscrypt-android:2.2.1'
  170. // 뷰바인딩을 위한 버터나이프
  171. implementation 'com.jakewharton:butterknife:10.2.0'
  172. annotationProcessor 'com.jakewharton:butterknife-compiler:10.2.0'
  173. // 빈생성 헬프를 위한 롬복
  174. compileOnly 'org.projectlombok:lombok:1.18.10'
  175. annotationProcessor 'org.projectlombok:lombok:1.18.10'
  176. // http 통신
  177. implementation('com.squareup.retrofit2:retrofit:2.6.2') {
  178. exclude module: 'okhttp'
  179. }
  180. // Logging
  181. implementation group: 'org.slf4j', name: 'slf4j-api', version: '1.7.25'
  182. // permissionCheck
  183. implementation 'gun0912.ted:tedpermission:2.0.0'
  184. }