You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

188 lines
5.6 KiB

1 year ago
1 year ago
  1. buildscript {
  2. repositories {
  3. // maven { url 'https://maven.fabric.io/public' }
  4. google()
  5. }
  6. // dependencies {
  7. // classpath 'io.fabric.tools:gradle:1.+'
  8. // }
  9. }
  10. apply plugin: 'com.android.application'
  11. //apply plugin: 'io.fabric'
  12. //repositories {
  13. // maven { url 'https://maven.fabric.io/public' }
  14. //}
  15. android {
  16. namespace "ru.visionlab.femdemo"
  17. compileSdkVersion 33
  18. buildToolsVersion '33.0.1'
  19. ndkVersion "21.0.6113669"
  20. // dexOptions {
  21. // javaMaxHeapSize "4g"
  22. // }
  23. compileOptions {
  24. sourceCompatibility JavaVersion.VERSION_1_8
  25. targetCompatibility JavaVersion.VERSION_1_8
  26. }
  27. defaultConfig {
  28. applicationId "ru.visionlab.femdemo"
  29. minSdkVersion 24
  30. targetSdkVersion 31
  31. versionCode 1
  32. versionName "2.4.2"
  33. externalNativeBuild {
  34. cmake {
  35. // version = "3.10.2.4988404"
  36. version = "3.6.4111459" //originally
  37. cppFlags "-std=c++11"
  38. abiFilters 'x86', 'armeabi-v7a', 'arm64-v8a'
  39. arguments "-DANDROID_STL=c++_shared",
  40. "-DFSDK_ROOT=./../../../..",
  41. "-DTSDK_ROOT=./../../../.."
  42. }
  43. }
  44. sourceSets.main {
  45. jniLibs.srcDir "./../../../../lib/clang"
  46. }
  47. }
  48. externalNativeBuild {
  49. cmake {
  50. path "src/main/jni/CMakeLists.txt"
  51. }
  52. }
  53. signingConfigs {
  54. release {
  55. storeFile file(RELEASE_STORE_FILE)
  56. storePassword RELEASE_STORE_PASSWORD
  57. keyAlias RELEASE_KEY_ALIAS
  58. keyPassword RELEASE_KEY_PASSWORD
  59. }
  60. }
  61. buildTypes {
  62. release {
  63. minifyEnabled false
  64. proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
  65. signingConfig signingConfigs.release
  66. }
  67. debug {
  68. minifyEnabled false
  69. proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
  70. }
  71. }
  72. flavorDimensions "version"
  73. splits {
  74. abi {
  75. enable true
  76. reset()
  77. include 'x86', 'armeabi-v7a', 'arm64-v8a'
  78. universalApk false
  79. }
  80. }
  81. productFlavors {
  82. offline {
  83. dimension "version"
  84. applicationIdSuffix ".offline"
  85. buildConfigField 'boolean', 'IS_OFFLINE_VERSION', "true"
  86. resValue "string", "app_name", "LUNA Mobile Offline"
  87. externalNativeBuild.cmake {
  88. cppFlags '-DRUNNING_OFFLINE_VERSION'
  89. }
  90. }
  91. online {
  92. dimension "version"
  93. applicationIdSuffix ".online"
  94. buildConfigField 'boolean', 'IS_OFFLINE_VERSION', "false"
  95. resValue "string", "app_name", "LUNA Mobile Online"
  96. }
  97. }
  98. packagingOptions {
  99. exclude 'META-INF/services/javax.annotation.processing.Processor'
  100. }
  101. }
  102. //Copy plans from data folder to assets dir
  103. copy {
  104. from('../../../../data') {
  105. include 'license.conf'
  106. include 'runtime.conf'
  107. include 'faceengine.conf'
  108. include 'trackengine.conf'
  109. include 'bestshotmobile.conf'
  110. include 'cnndescriptor_59.conf'
  111. include 'cnn59m_*.plan'
  112. include 'FaceDet_v2_*.plan'
  113. include 'eyes_estimation_flwr8_*.plan'
  114. include 'eye_status_estimation_flwr_*.plan'
  115. include 'ags_angle_estimation_flwr_*.plan'
  116. include 'oslm_v3_model_1_*.plan'
  117. include 'oslm_v3_model_2_*.plan'
  118. include 'oslm_v3_model_3_*.plan'
  119. include 'oslm_v3_model_4_*.plan'
  120. include 'oslm_v3_model_5_*.plan'
  121. include 'oslm_v3_model_6_*.plan'
  122. }
  123. into 'src/main/assets/data'
  124. }
  125. dependencies {
  126. implementation 'javax.annotation:jsr250-api:1.0'
  127. implementation 'com.google.dagger:dagger:2.36'
  128. implementation 'androidx.appcompat:appcompat:1.6.1'
  129. implementation 'androidx.constraintlayout:constraintlayout:2.1.4'
  130. annotationProcessor 'com.google.dagger:dagger-compiler:2.36'
  131. implementation 'com.jakewharton:butterknife:9.0.0-rc1'
  132. annotationProcessor 'com.jakewharton:butterknife-compiler:9.0.0-rc1'
  133. // implementation fileTree(dir: 'libs', include: ['*.jar'])
  134. implementation 'com.squareup.retrofit2:retrofit:2.9.0'
  135. implementation 'com.squareup.retrofit2:converter-gson:2.1.0'
  136. implementation 'com.squareup.retrofit2:adapter-rxjava:2.1.0'
  137. implementation 'com.google.code.gson:gson:2.8.6'
  138. implementation 'com.squareup.okhttp3:okhttp:4.9.1'
  139. implementation 'com.squareup.okhttp3:logging-interceptor:4.9.1'
  140. implementation 'info.android15.proxypref:proxypref:0.2.0'
  141. implementation 'com.squareup.picasso:picasso:2.5.2'
  142. implementation 'com.jakewharton:butterknife:8.4.0'
  143. implementation 'com.tbruyelle.rxpermissions:rxpermissions:0.8.0@aar'
  144. implementation 'io.reactivex:rxandroid:1.2.1'
  145. implementation 'io.reactivex:rxjava:1.2.1'
  146. implementation 'com.makeramen:roundedimageview:2.2.1'
  147. implementation 'com.trello:rxlifecycle:1.0'
  148. implementation 'com.trello:rxlifecycle-android:1.0'
  149. implementation 'com.trello:rxlifecycle-components:1.0'
  150. implementation 'androidx.legacy:legacy-support-v4:1.0.0'
  151. implementation 'com.google.android.material:material:1.0.0'
  152. implementation 'com.github.f0ris.sweetalert:library:1.5.1'
  153. // implementation 'uk.co.chrisjenx:calligraphy:2.3.0'
  154. implementation 'io.github.inflationx:calligraphy3:3.1.1'
  155. implementation 'io.github.inflationx:viewpump:2.0.3'
  156. // implementation('com.crashlytics.sdk.android:crashlytics:2.6.5@aar') {
  157. // transitive = true;
  158. // }
  159. }