blob: 86dc583ecc52455693eb160aa87ef4a3b7c32545 [file] [log] [blame]
Adrien Béraudb00ed3f2015-06-07 15:36:06 -04001apply plugin: 'com.android.application'
2
Pierre Duchemincaac0392018-06-06 12:18:25 -04003def buildFirebase = project.hasProperty('buildFirebase') || getGradle().getStartParameter().getTaskRequests().toString().contains('Firebase')
Adrien Béraud0e0feef2018-02-13 16:32:06 +01004
5android {
6 compileSdkVersion 27
Pierre Duchemin2b2a9ff2018-02-20 11:21:02 -05007 buildToolsVersion '27.0.3'
Adrien Béraud0e0feef2018-02-13 16:32:06 +01008 defaultConfig {
Adrien Béraud3de26d52018-03-10 16:10:02 -05009 minSdkVersion 19
Adrien Béraud0e0feef2018-02-13 16:32:06 +010010 targetSdkVersion 27
Adrien Béraud568c90b2018-07-12 16:56:16 -040011 versionCode 127
12 versionName "20180712"
Adrien Béraud0e0feef2018-02-13 16:32:06 +010013 vectorDrawables.useSupportLibrary = true
14 }
15
16 sourceSets {
17 main {
18 aidl.srcDirs = ['src/main/java']
19 jniLibs.srcDir 'src/main/libs'
20 jni.srcDirs = []
21 }
Adrien Béraud0e0feef2018-02-13 16:32:06 +010022 }
23 compileOptions {
24 sourceCompatibility JavaVersion.VERSION_1_8
25 targetCompatibility JavaVersion.VERSION_1_8
26 }
27 buildTypes {
Adrien Béraudcad9db82018-04-21 21:00:41 -040028 debug {
29 minifyEnabled true
30 debuggable true
31 proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
32 }
Adrien Béraud0e0feef2018-02-13 16:32:06 +010033 release {
34 minifyEnabled true
35 proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
36 }
37 }
38 flavorDimensions "push"
39 productFlavors {
40 noPush {
41 dimension "push"
42 }
43 withFirebase {
44 dimension "push"
45 }
46 }
47 signingConfigs {
48 config {
49 keyAlias 'ring'
50 storeFile file('../keystore.bin')
51 }
52 }
53 lintOptions {
54 disable 'MissingTranslation'
55 }
56 splits {
57 abi {
58 enable true
59 reset()
60 def sp = archs.split(',')
61 include(sp)
62 universalApk true
63 }
64 }
65}
Romain Bertozzi2b2aa6f2016-04-28 11:18:57 -040066
Adrien Béraudb00ed3f2015-06-07 15:36:06 -040067dependencies {
Adrien Béraud5f51c722018-04-06 00:54:31 -040068 def android_support_version = "27.1.1"
Pierre Duchemin511775d2018-02-15 16:11:38 -050069 def butterknife_version = "8.8.1"
70 def dagger_version = "2.12"
71
Pierre Ducheminb5317682017-12-27 16:38:12 -050072 implementation fileTree(include: '*.jar', dir: 'libs')
73 implementation project(':libringclient')
Alexandre Lision5da46fa2017-08-09 10:25:50 -040074
Pierre Ducheminb5317682017-12-27 16:38:12 -050075 implementation "com.android.support:support-v13:$android_support_version"
76 implementation "com.android.support:design:$android_support_version"
77 implementation "com.android.support:cardview-v7:$android_support_version"
78 implementation "com.android.support:preference-v14:$android_support_version"
79 implementation "com.android.support:recyclerview-v7:$android_support_version"
80 implementation "com.android.support:appcompat-v7:$android_support_version"
81 implementation "com.android.support:leanback-v17:$android_support_version"
Pierre Duchemin8b715f82018-01-09 11:53:40 -050082 implementation "com.android.support:preference-leanback-v17:$android_support_version"
Alexandre Lision5da46fa2017-08-09 10:25:50 -040083
Romain Bertozzi64a66782016-08-02 12:10:38 -040084 // ORM
Pierre Ducheminb5317682017-12-27 16:38:12 -050085 implementation 'com.j256.ormlite:ormlite-android:4.48'
Alexandre Lision5da46fa2017-08-09 10:25:50 -040086
Romain Bertozzi64a66782016-08-02 12:10:38 -040087 // Barcode scanning
Adrien Béraudb966f8a2018-06-22 12:15:30 -040088 implementation 'com.journeyapps:zxing-android-embedded:3.6.0@aar'
Alexandre Lision5da46fa2017-08-09 10:25:50 -040089
Romain Bertozzi64a66782016-08-02 12:10:38 -040090 // Butterknife
Pierre Ducheminb5317682017-12-27 16:38:12 -050091 implementation "com.jakewharton:butterknife:$butterknife_version"
92 annotationProcessor "com.jakewharton:butterknife-compiler:$butterknife_version"
93
Pierre Ducheminbb833672018-03-09 16:18:33 -050094 implementation 'com.rodolfonavalon:ShapeRippleLibrary:1.0.0'
Alexandre Lision5da46fa2017-08-09 10:25:50 -040095
Thibault Wittemberg55030872016-11-08 10:55:54 -050096 // Dagger dependency injection
Pierre Duchemin511775d2018-02-15 16:11:38 -050097 implementation "com.google.dagger:dagger:$dagger_version"
Pierre Ducheminb5317682017-12-27 16:38:12 -050098 annotationProcessor "com.google.dagger:dagger-compiler:$dagger_version"
Alexandre Lision5da46fa2017-08-09 10:25:50 -040099
Hadrien De Sousa84ab2d22017-03-16 15:45:52 -0400100 // Glide
Adrien Béraud576f6b12018-05-09 17:01:21 -0400101 implementation 'com.github.bumptech.glide:glide:4.7.1'
102 annotationProcessor 'com.github.bumptech.glide:compiler:4.7.1'
Hadrien De Sousa0dc83162017-11-10 16:15:18 -0500103
104 // RxAndroid
Pierre Duchemin2b2a9ff2018-02-20 11:21:02 -0500105 implementation 'io.reactivex.rxjava2:rxandroid:2.0.2'
Adrien Béraud0cfb6c82018-01-24 13:01:23 -0500106
Adrien Béraud64538722018-03-15 17:34:00 -0400107 implementation 'com.jsibbold:zoomage:1.1.0'
108
Adrien Béraud1efcf922018-06-22 10:59:58 -0400109 withFirebaseImplementation 'com.google.firebase:firebase-core:16.0.1'
Adrien Béraudcd0f6112018-05-30 15:49:17 -0400110 withFirebaseImplementation 'com.google.firebase:firebase-messaging:17.0.0'
Adrien Béraudb00ed3f2015-06-07 15:36:06 -0400111}
112
Adrien Béraud0e0feef2018-02-13 16:32:06 +0100113if (buildFirebase) {
114 println 'apply plugin ' + buildFirebase
Adrien Béraud0cfb6c82018-01-24 13:01:23 -0500115 apply plugin: 'com.google.gms.google-services'
116}