· 6 years ago · Mar 14, 2019, 03:52 PM
1buildscript {
2 repositories {
3 google()
4 maven { url 'https://maven.fabric.io/public' }
5 }
6
7 dependencies {
8 classpath 'io.fabric.tools:gradle:1.26.1'
9 }
10}
11apply plugin: 'com.android.application'
12apply plugin: 'io.fabric'
13apply plugin: 'devicefarm'
14
15repositories {
16 maven { url 'https://maven.fabric.io/public' }
17}
18
19android {
20 compileSdkVersion 27
21
22 defaultConfig {
23 applicationId 'com.dmt.hourgps'
24 minSdkVersion 21
25 targetSdkVersion 26
26 versionCode 1
27 versionName '0.2.1'
28 ndk {
29 abiFilters 'armeabi-v7a', 'x86'
30 }
31 multiDexEnabled true
32 testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
33 // Deprecated. Used by net.openid:appauth
34 manifestPlaceholders = [
35 'appAuthRedirectScheme': 'host.exp.exponent'
36 ]
37 }
38 dexOptions {
39 javaMaxHeapSize System.getenv("DISABLE_DEX_MAX_HEAP") ? null : "8g"
40 }
41
42 flavorDimensions 'remoteKernel'
43 productFlavors {
44 devKernel {
45 dimension 'remoteKernel'
46 }
47 prodKernel {
48 dimension 'remoteKernel'
49 }
50 }
51 signingConfigs {
52 debug {
53 storeFile file('../debug.keystore')
54 }
55 release {
56 storeFile file(System.getenv("ANDROID_KEYSTORE_PATH") ?: "release-key.jks")
57 storePassword System.getenv("ANDROID_KEYSTORE_PASSWORD")
58 keyAlias System.getenv("ANDROID_KEY_ALIAS")
59 keyPassword System.getenv("ANDROID_KEY_PASSWORD")
60 }
61 }
62 buildTypes {
63 debug {
64 debuggable true
65 ext.enableCrashlytics = false
66 }
67 release {
68 minifyEnabled true
69 proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
70 signingConfig signingConfigs.release
71 }
72 }
73 lintOptions {
74 abortOnError false
75 }
76 packagingOptions {
77 pickFirst "**"
78 }
79 configurations.all {
80 resolutionStrategy.force 'com.android.support:design:27.1.0'
81 }
82}
83
84devicefarm {
85 projectName System.getenv("DEVICEFARM_PROJECT_NAME")
86 devicePool System.getenv("DEVICEFARM_DEVICE_POOL")
87 executionTimeoutMinutes 40
88 authentication {
89 accessKey System.getenv("AWS_ACCESS_KEY_ID")
90 secretKey System.getenv("AWS_SECRET_ACCESS_KEY")
91 }
92}
93
94configurations.all {
95 resolutionStrategy {
96 force 'org.webkit:android-jsc:r224109'
97 }
98}
99
100// WHEN_PREPARING_SHELL_REMOVE_FROM_HERE
101
102apply from: 'expo.gradle'
103
104// WHEN_PREPARING_SHELL_REMOVE_TO_HERE
105
106dependencies {
107 compile project(':react-native-background-fetch')
108 compile project(':react-native-background-geolocation')
109 implementation fileTree(dir: 'libs', include: ['*.jar'])
110
111 implementation 'com.android.support:multidex:1.0.3'
112
113 // Our dependencies
114 implementation 'com.android.support:appcompat-v7:27.1.1'
115
116 // Our dependencies from ExpoView
117 // DON'T ADD ANYTHING HERE THAT ISN'T IN EXPOVIEW. ONLY COPY THINGS FROM EXPOVIEW TO HERE.
118 implementation 'com.android.support:appcompat-v7:27.1.1'
119 implementation 'com.facebook.android:facebook-android-sdk:4.39.0'
120 implementation('com.facebook.android:audience-network-sdk:4.99.0') {
121 exclude module: 'play-services-ads'
122 }
123 compileOnly 'org.glassfish:javax.annotation:3.1.1'
124 implementation 'com.jakewharton:butterknife:8.4.0'
125 implementation 'de.greenrobot:eventbus:2.4.0'
126
127 // Be careful when upgrading! Upgrading might break experience scoping. Check with Jesse. See Analytics.resetAmplitudeDatabaseHelper
128 implementation 'com.amplitude:android-sdk:2.9.2'
129
130 implementation 'com.squareup.picasso:picasso:2.5.2'
131 implementation 'com.google.android.gms:play-services-gcm:15.+'
132 implementation 'com.google.android.gms:play-services-analytics:15.+'
133 implementation 'com.google.android.gms:play-services-maps:15.+'
134 implementation 'com.google.android.gms:play-services-auth:15.+'
135 implementation 'com.google.android.gms:play-services-location:15.+'
136 implementation 'com.google.android.gms:play-services-ads:15.+'
137 implementation 'com.google.android.gms:play-services-basement:15.0.1'
138 implementation 'com.android.support:support-v4:27.1.0'
139 annotationProcessor 'com.raizlabs.android:DBFlow-Compiler:2.2.1'
140 implementation "com.raizlabs.android:DBFlow-Core:2.2.1"
141 implementation "com.raizlabs.android:DBFlow:2.2.1"
142 implementation "com.madgag.spongycastle:core:1.53.0.0"
143 implementation "com.madgag.spongycastle:prov:1.53.0.0"
144 debugImplementation 'com.squareup.leakcanary:leakcanary-android-no-op:1.4-beta1'
145 // debugImplementation 'com.squareup.leakcanary:leakcanary-android:1.4-beta1'
146 releaseImplementation 'com.squareup.leakcanary:leakcanary-android-no-op:1.4-beta1'
147 implementation 'com.facebook.device.yearclass:yearclass:2.1.0'
148 implementation 'commons-io:commons-io:2.4'
149 implementation 'me.leolin:ShortcutBadger:1.1.4@aar'
150 implementation 'com.theartofdev.edmodo:android-image-cropper:2.7.0'
151 implementation 'com.yqritc:android-scalablevideoview:1.0.1'
152 implementation 'commons-codec:commons-codec:1.10'
153 implementation 'com.segment.analytics.android:analytics:4.3.0'
154 implementation 'com.google.zxing:core:3.3.3'
155 implementation 'net.openid:appauth:0.7.1'
156 implementation('com.airbnb.android:lottie:2.5.5') {
157 exclude group: 'com.android.support', module: 'appcompat-v7'
158 }
159 implementation 'io.branch.sdk.android:library:2.17.1'
160 implementation('io.nlopez.smartlocation:library:3.2.11') {
161 transitive = false
162 }
163 implementation 'com.android.support:exifinterface:27.1.1'
164 implementation 'com.squareup.okio:okio:1.15.0'
165 implementation 'com.facebook.soloader:soloader:0.5.1'
166
167 implementation 'com.google.android.exoplayer:exoplayer:2.6.1'
168 implementation 'expolib_v1.com.google.android.exoplayer:expolib_v1-extension-okhttp:2.6.1@aar'
169
170 // expo-file-system
171 implementation 'com.squareup.okhttp3:okhttp:3.12.1'
172 implementation 'com.squareup.okhttp3:okhttp-urlconnection:3.11.0'
173
174 // Testing
175 androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
176 // We use a modified build of com.android.support.test:runner:1.0.1. Explanation in maven-test/README
177 androidTestImplementation 'com.android.support.test:runner:1.0.1'
178 androidTestImplementation 'com.android.support:support-annotations:27.1.1'
179 androidTestImplementation 'com.google.code.findbugs:jsr305:3.0.0'
180 androidTestImplementation 'com.android.support.test.uiautomator:uiautomator-v18:2.1.1'
181 androidTestImplementation 'com.azimolabs.conditionwatcher:conditionwatcher:0.2'
182
183 testImplementation 'junit:junit:4.12'
184 testImplementation 'org.mockito:mockito-core:1.10.19'
185 testImplementation 'org.robolectric:robolectric:3.8'
186 testImplementation 'com.android.support.test:runner:1.0.2-alpha1'
187 testImplementation 'com.android.support.test:rules:1.0.2-alpha1'
188
189
190 implementation('host.exp.exponent:expoview:32.0.0@aar') {
191 transitive = true
192 exclude group: 'com.squareup.okhttp3', module: 'okhttp'
193 exclude group: 'com.squareup.okhttp3', module: 'okhttp-urlconnection'
194 }
195
196
197
198
199 api 'com.facebook.react:react-native:32.0.0'
200 api 'host.exp.exponent:expo-app-loader-provider:1.0.0'
201 api 'host.exp.exponent:expo-core:2.0.0'
202 api 'host.exp.exponent:expo-constants-interface:2.0.0'
203 api 'host.exp.exponent:expo-constants:2.0.1'
204 api 'host.exp.exponent:expo-errors:1.0.0'
205 api 'host.exp.exponent:expo-file-system-interface:2.0.0'
206 api 'host.exp.exponent:expo-file-system:2.0.0'
207 api 'host.exp.exponent:expo-image-loader-interface:2.0.0'
208 api 'host.exp.exponent:expo-permissions:2.0.0'
209 api 'host.exp.exponent:expo-permissions-interface:2.0.0'
210 api 'host.exp.exponent:expo-sensors-interface:2.0.0'
211 api 'host.exp.exponent:expo-react-native-adapter:2.0.0'
212 api 'host.exp.exponent:expo-task-manager:1.0.0'
213 api 'host.exp.exponent:expo-task-manager-interface:1.0.0'
214
215 // Optional universal modules, could be removed
216 // along with references in MainActivity
217 api 'host.exp.exponent:expo-ads-admob:2.0.0'
218 api 'host.exp.exponent:expo-app-auth:2.0.0'
219 api 'host.exp.exponent:expo-analytics-segment:2.0.0'
220 api 'host.exp.exponent:expo-barcode-scanner-interface:2.0.0'
221 api 'host.exp.exponent:expo-barcode-scanner:2.0.0'
222 api 'host.exp.exponent:expo-camera-interface:2.0.0'
223 api 'host.exp.exponent:expo-camera:2.0.0'
224 api 'host.exp.exponent:expo-contacts:2.0.0'
225 api 'host.exp.exponent:expo-face-detector:2.0.0'
226 api 'host.exp.exponent:expo-face-detector-interface:2.0.0'
227 api 'host.exp.exponent:expo-font:2.0.0'
228 api 'host.exp.exponent:expo-gl-cpp:2.0.0'
229 api 'host.exp.exponent:expo-gl:2.0.0'
230 api 'host.exp.exponent:expo-google-sign-in:2.0.0'
231 api 'host.exp.exponent:expo-local-authentication:2.0.0'
232 api 'host.exp.exponent:expo-localization:2.0.0'
233 api 'host.exp.exponent:expo-location:2.0.1'
234 api 'host.exp.exponent:expo-media-library:2.0.0'
235 api 'host.exp.exponent:expo-print:2.0.0'
236 api 'host.exp.exponent:expo-sensors:2.0.0'
237 api 'host.exp.exponent:expo-sms:2.0.0'
238 api 'host.exp.exponent:expo-background-fetch:1.0.0'
239
240
241}
242
243// This has to be down here for some reason
244apply plugin: 'com.google.gms.google-services'