build.gradle 7.4 KB

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