// Top-level build file where you can add configuration options common to all sub-projects/modules. import groovy.json.JsonSlurper buildscript { repositories { google() jcenter() } dependencies { classpath("com.android.tools.build:gradle:3.5.3") // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files } } allprojects { repositories { mavenLocal() maven { // All of React Native (JS, Obj-C sources, Android binaries) is installed from npm url("$rootDir/../node_modules/react-native/android") } maven { // Android JSC is installed from npm url("$rootDir/../node_modules/jsc-android/dist") } google() jcenter() maven { url 'https://www.jitpack.io' } } } ext { buildToolsVersion = "29.0.2" minSdkVersion = 16 compileSdkVersion = 29 targetSdkVersion = 29 def npmVersion = getNpmVersionArray() versionMajor = npmVersion[0] versionMinor = npmVersion[1] versionPatch = npmVersion[2] } def getNpmVersion() { def inputFile = new File("../package.json") def packageJson = new JsonSlurper().parseText(inputFile.text) return packageJson["version"] } def getNpmVersionArray() { def (major, minor, patch) = getNpmVersion().tokenize('.') return [Integer.parseInt(major), Integer.parseInt(minor), Integer.parseInt(patch)] as int[] }