| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173 | 
							- buildscript {
 -     repositories {
 -         maven { url 'https://maven.fabric.io/public' }
 -     }
 - 
 -     dependencies {
 -         classpath 'io.fabric.tools:gradle:1.+'
 -     }
 - }
 - 
 - apply plugin: 'com.android.application'
 - apply plugin: 'io.fabric'
 - 
 - import com.android.build.OutputFile
 - 
 - /**
 -  * The react.gradle file registers a task for each build variant (e.g. bundleDebugJsAndAssets
 -  * and bundleReleaseJsAndAssets).
 -  * These basically call `react-native bundle` with the correct arguments during the Android build
 -  * cycle. By default, bundleDebugJsAndAssets is skipped, as in debug/dev mode we prefer to load the
 -  * bundle directly from the development server. Below you can see all the possible configurations
 -  * and their defaults. If you decide to add a configuration block, make sure to add it before the
 -  * `apply from: "../../node_modules/react-native/react.gradle"` line.
 -  *
 -  * project.ext.react = [
 -  *   // the name of the generated asset file containing your JS bundle
 -  *   bundleAssetName: "index.android.bundle",
 -  *
 -  *   // the entry file for bundle generation
 -  *   entryFile: "index.android.js",
 -  *
 -  *   // whether to bundle JS and assets in debug mode
 -  *   bundleInDebug: false,
 -  *
 -  *   // whether to bundle JS and assets in release mode
 -  *   bundleInRelease: true,
 -  *
 -  *   // whether to bundle JS and assets in another build variant (if configured).
 -  *   // See http://tools.android.com/tech-docs/new-build-system/user-guide#TOC-Build-Variants
 -  *   // The configuration property can be in the following formats
 -  *   //         'bundleIn${productFlavor}${buildType}'
 -  *   //         'bundleIn${buildType}'
 -  *   // bundleInFreeDebug: true,
 -  *   // bundleInPaidRelease: true,
 -  *   // bundleInBeta: true,
 -  *
 -  *   // the root of your project, i.e. where "package.json" lives
 -  *   root: "../../",
 -  *
 -  *   // where to put the JS bundle asset in debug mode
 -  *   jsBundleDirDebug: "$buildDir/intermediates/assets/debug",
 -  *
 -  *   // where to put the JS bundle asset in release mode
 -  *   jsBundleDirRelease: "$buildDir/intermediates/assets/release",
 -  *
 -  *   // where to put drawable resources / React Native assets, e.g. the ones you use via
 -  *   // require('./image.png')), in debug mode
 -  *   resourcesDirDebug: "$buildDir/intermediates/res/merged/debug",
 -  *
 -  *   // where to put drawable resources / React Native assets, e.g. the ones you use via
 -  *   // require('./image.png')), in release mode
 -  *   resourcesDirRelease: "$buildDir/intermediates/res/merged/release",
 -  *
 -  *   // by default the gradle tasks are skipped if none of the JS files or assets change; this means
 -  *   // that we don't look at files in android/ or ios/ to determine whether the tasks are up to
 -  *   // date; if you have any other folders that you want to ignore for performance reasons (gradle
 -  *   // indexes the entire tree), add them here. Alternatively, if you have JS files in android/
 -  *   // for example, you might want to remove it from here.
 -  *   inputExcludes: ["android/**", "ios/**"],
 -  *
 -  *   // override which node gets called and with what additional arguments
 -  *   nodeExecutableAndArgs: ["node"]
 -  *
 -  *   // supply additional arguments to the packager
 -  *   extraPackagerArgs: []
 -  * ]
 -  */
 - 
 - apply from: '../../node_modules/react-native/react.gradle'
 - 
 - /**
 -  * Set this to true to create two separate APKs instead of one:
 -  *   - An APK that only works on ARM devices
 -  *   - An APK that only works on x86 devices
 -  * The advantage is the size of the APK is reduced by about 4MB.
 -  * Upload all the APKs to the Play Store and people will download
 -  * the correct one based on the CPU architecture of their device.
 -  */
 - def enableSeparateBuildPerCPUArchitecture = false
 - 
 - /**
 -  * Run Proguard to shrink the Java bytecode in release builds.
 -  */
 - def enableProguardInReleaseBuilds = false
 - 
 - android {
 -     compileSdkVersion 23
 -     buildToolsVersion '23.0.1'
 - 
 -     defaultConfig {
 -         applicationId 'org.jitsi.jitsi_meet_react'
 -         minSdkVersion 16
 -         targetSdkVersion 22
 -         versionCode 1
 -         versionName '1.0'
 -         ndk {
 -             abiFilters 'armeabi-v7a', 'x86'
 -         }
 -         packagingOptions {
 -             // The project react-native does not provide 64-bit binaries at the
 -             // time of this writing. Unfortunately, packaging any 64-bit
 -             // binaries into the .apk will crash the app at runtime on 64-bit
 -             // platforms.
 -             exclude 'lib/x86_64/libjingle_peerconnection_so.so'
 -             exclude 'lib/arm64-v8a/libjingle_peerconnection_so.so'
 -         }
 -     }
 -     splits {
 -         abi {
 -             reset()
 -             enable enableSeparateBuildPerCPUArchitecture
 -             universalApk false  // If true, also generate a universal APK
 -             include 'armeabi-v7a', 'x86'
 -         }
 -     }
 -     buildTypes {
 -         release {
 -             minifyEnabled enableProguardInReleaseBuilds
 -             proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
 -         }
 -     }
 -     // applicationVariants are e.g. debug, release
 -     applicationVariants.all { variant ->
 -         variant.outputs.each { output ->
 -             // For each separate APK per architecture, set a unique version code as described here:
 -             // http://tools.android.com/tech-docs/new-build-system/user-guide/apk-splits
 -             def versionCodes = ['armeabi-v7a':1, 'x86':2]
 -             def abi = output.getFilter(OutputFile.ABI)
 -             if (abi != null) {  // null for the universal-debug, universal-release variants
 -                 output.versionCodeOverride =
 -                         versionCodes.get(abi) * 1048576 + defaultConfig.versionCode
 -             }
 -         }
 -     }
 - }
 - 
 - if (project.hasProperty('JITSI_SIGNING')
 -         && new File(project.property('JITSI_SIGNING')).exists()) {
 -     apply from: project.property('JITSI_SIGNING');
 - }
 - 
 - repositories {
 -     maven { url 'https://maven.fabric.io/public' }
 - }
 - dependencies {
 -     compile project(':react-native-vector-icons')
 -     compile project(':react-native-webrtc')
 -     compile fileTree(dir: 'libs', include: ['*.jar'])
 -     compile 'com.android.support:appcompat-v7:23.0.1'
 -     compile 'com.facebook.react:react-native:+'
 -     compile('com.crashlytics.sdk.android:crashlytics:2.6.5@aar') {
 -         transitive = true
 -     }
 - }
 - 
 - apply from: '../../node_modules/react-native-vector-icons/fonts.gradle'
 - 
 - // Run this once to be able to run the application with BUCK
 - // puts all compile dependencies into folder libs for BUCK to use
 - task copyDownloadableDepsToLibs(type: Copy) {
 -   from configurations.compile
 -   into 'libs'
 - }
 
 
  |