2020-11-09 20:14:35 +00:00
def safeExtGet ( prop , fallback ) {
rootProject . ext . has ( prop ) ? rootProject . ext . get ( prop ) : fallback
}
2017-08-03 18:23:43 +00:00
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
2020-11-09 20:14:35 +00:00
def taskRequests = getGradle ( ) . getStartParameter ( ) . getTaskRequests ( ) . toString ( ) . toLowerCase ( )
def isPlay = ! taskRequests . contains ( "foss" )
2019-05-22 20:15:35 +00:00
ext {
2021-07-21 15:50:39 +00:00
buildToolsVersion = "29.0.3"
2020-11-03 14:18:15 +00:00
minSdkVersion = 23
2020-07-20 16:35:17 +00:00
compileSdkVersion = 29
targetSdkVersion = 29
2021-07-21 15:50:39 +00:00
ndkVersion = "20.1.5948944"
2020-11-30 17:00:06 +00:00
glideVersion = "4.11.0"
2019-09-16 20:26:32 +00:00
kotlin_version = "1.3.50"
2019-09-17 19:24:47 +00:00
supportLibVersion = "28.0.0"
2020-11-09 20:14:35 +00:00
libre_build = ! ( isPlay . toBoolean ( ) )
jitsi_url = isPlay ? "https://github.com/RocketChat/jitsi-maven-repository/raw/master/releases" : "https://github.com/RocketChat/jitsi-maven-repository/raw/libre/releases"
2020-12-04 22:18:55 +00:00
jitsi_version = isPlay ? "2.10.2" : "2.10.0-libre"
2019-05-22 20:15:35 +00:00
}
2020-11-09 20:14:35 +00:00
2017-08-03 18:23:43 +00:00
repositories {
2018-07-10 13:40:32 +00:00
mavenLocal ( )
2018-10-23 21:39:48 +00:00
google ( )
2018-07-10 13:40:32 +00:00
jcenter ( )
2019-05-28 13:03:08 +00:00
maven {
url 'https://maven.fabric.io/public'
}
2017-08-03 18:23:43 +00:00
}
2020-08-24 12:24:10 +00:00
2017-08-03 18:23:43 +00:00
dependencies {
2020-08-24 12:24:10 +00:00
if ( isPlay ) {
classpath 'com.google.gms:google-services:4.2.0'
classpath 'com.google.firebase:firebase-crashlytics-gradle:2.0.0'
2021-07-26 21:54:31 +00:00
classpath 'com.bugsnag:bugsnag-android-gradle-plugin:5.7.7' // 5.7.8+ breaks the build by requiring the @bugsnag/react-native package instead of bugsnag-react-native that is being used currently.
2020-08-24 12:24:10 +00:00
}
2021-07-21 15:50:39 +00:00
classpath 'com.android.tools.build:gradle:4.1.0'
2019-09-16 20:26:32 +00:00
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
2017-08-03 18:23:43 +00:00
}
}
allprojects {
repositories {
mavenLocal ( )
maven {
// All of React Native (JS, Obj-C sources, Android binaries) is installed from npm
2019-08-07 13:51:34 +00:00
url ( "$rootDir/../node_modules/react-native/android" )
2017-08-03 18:23:43 +00:00
}
2019-06-05 14:20:56 +00:00
maven {
2020-11-09 20:14:35 +00:00
// Android JSC is installed from npm
url ( "$rootDir/../node_modules/jsc-android/dist" )
}
2020-12-04 22:18:55 +00:00
2021-04-05 12:00:56 +00:00
maven {
url "$rootDir/../node_modules/detox/Detox-android"
}
2020-11-09 20:14:35 +00:00
maven {
2020-12-04 22:18:55 +00:00
url jitsi_url
2019-09-18 17:32:12 +00:00
}
2019-08-07 13:51:34 +00:00
google ( )
jcenter ( )
maven { url 'https://maven.google.com' }
2020-05-08 16:37:49 +00:00
maven { url 'https://www.jitpack.io' }
2017-08-03 18:23:43 +00:00
}
}
2018-07-18 20:34:59 +00:00
2019-12-11 19:23:16 +00:00
subprojects { subproject - >
afterEvaluate {
if ( ( subproject . plugins . hasPlugin ( 'android' ) | | subproject . plugins . hasPlugin ( 'android-library' ) ) ) {
android {
2020-08-05 16:47:41 +00:00
compileSdkVersion 29
2021-07-21 15:50:39 +00:00
buildToolsVersion "29.0.3"
2019-12-11 19:23:16 +00:00
defaultConfig {
2020-08-05 16:47:41 +00:00
targetSdkVersion 29
2019-12-11 19:23:16 +00:00
}
2020-05-08 16:37:49 +00:00
variantFilter { variant - >
def names = variant . flavors * . name
if ( names . contains ( "reactNative59" ) ) {
setIgnore ( true )
}
}
2019-12-11 19:23:16 +00:00
}
}
}
}