hunk.code_window:   // Our dependencies
     api 'com.android.support:appcompat-v7:27.1.1'
     api 'com.android.support:customtabs:27.1.1'
     api('com.crashlytics.sdk.android:crashlytics:2.5.5@aar') {
       transitive = true;
     }
     api 'com.facebook.android:facebook-android-sdk:4.38.0'
     api('com.facebook.android:audience-network-sdk:4.99.0') {
       exclude module: 'play-services-ads'
  
hunk.labels: keep keep keep keep replace keep keep keep keep
hunk.after_edit:     transitive = true
  
hunk.file_path: android/expoview/build.gradle
hunk.type: replace
file: apply plugin: 'com.android.library'
  apply plugin: 'maven'
  apply plugin: 'com.jakewharton.butterknife'
  
  // WHEN_VERSIONING_REMOVE_FROM_HERE
  //maven repository info
  group = 'host.exp.exponent'
  version = '30.0.0'
  
  //Upload android library to maven with javadoc and android sources
  configurations {
    deployerJars
  }
  
  //Creating sources with comments
  task androidSourcesJar(type: Jar) {
    classifier = 'sources'
    from android.sourceSets.main.java.srcDirs
  }
  
  //Put the androidSources and javadoc to the artifacts
  artifacts {
    archives androidSourcesJar
  }
  
  uploadArchives {
    repositories {
      mavenDeployer {
        configuration = configurations.deployerJars
        repository(url: mavenLocal().url) {
          //if your repository needs authentication
          // authentication(userName: "username", password: "password")
        }
      }
    }
  }
  // WHEN_VERSIONING_REMOVE_TO_HERE
  
  buildscript {
    repositories {
      maven { url 'https://maven.fabric.io/public' }
      maven { url "https://jitpack.io" }
      mavenCentral()
      google()
      jcenter()
    }
    dependencies {
      classpath 'com.jakewharton:butterknife-gradle-plugin:8.4.0'
    }
  }
  
  repositories {
    maven { url 'https://maven.fabric.io/public' }
    maven { url "https://jitpack.io" }
  }
  
  android {
    compileSdkVersion 27
    buildToolsVersion "27.0.3"
  
    defaultConfig {
      minSdkVersion 21
      targetSdkVersion 26
      versionCode 1
      versionName "1.0"
      ndk {
        abiFilters 'armeabi-v7a', 'x86'
      }
      // WHEN_VERSIONING_REMOVE_FROM_HERE
      manifestPlaceholders = [
        'appAuthRedirectScheme': 'host.exp.exponent'
      ]
      // WHEN_VERSIONING_REMOVE_TO_HERE
    }
  
    buildTypes {
      debug {
        ext.enableCrashlytics = false
      }
      release {
        minifyEnabled false
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
      }
    }
  }
  
  // WHEN_VERSIONING_REMOVE_FROM_HERE
  import org.apache.tools.ant.taskdefs.condition.Os
  
  task generateDynamicMacros(type: Exec) {
    environment "EXPO_ANDROID_GRADLE_TASK_NAMES", "${gradle.startParameter.taskNames}"
    if (Os.isFamily(Os.FAMILY_WINDOWS)) {
      // This gets run from the 'app' directory
      workingDir '../../tools-public'
      def command = 'gulp generate-dynamic-macros --buildConstantsPath ../android/expoview/src/main/java/host/exp/exponent/generated/ExponentBuildConstants.java --platform android'
      commandLine 'cmd.exe', '/c', command
    } else {
      commandLine '../../tools-public/generate-dynamic-macros-android.sh'
    }
  }
  preBuild.dependsOn generateDynamicMacros
  // WHEN_VERSIONING_REMOVE_TO_HERE
  
  configurations.all {
    resolutionStrategy {
      force 'org.webkit:android-jsc:r224109'
    }
  }
  
  dependencies {
    api fileTree(dir: 'libs', include: ['*.jar'])
    api 'com.android.support:multidex:1.0.3'
  
    // WHEN_VERSIONING_REPLACE_WITH_DEPENDENCIES
  
    // WHEN_VERSIONING_REMOVE_FROM_HERE
    // Current react native
    /* UNCOMMENT WHEN DISTRIBUTING
    api 'com.facebook.react:react-native:30.0.0'
    api 'host.exp.exponent:expo-core:1.2.0-rc.0'
    api 'host.exp.exponent:expo-react-native-adapter:1.2.0-rc.0'
    api 'host.exp.exponent:expo-camera:1.2.0-rc.0'
    api 'host.exp.exponent:expo-camera-interface:1.1.0-rc.0'
    api 'host.exp.exponent:expo-sensors:1.1.0-rc.0'
    api 'host.exp.exponent:expo-sensors-interface:1.1.0-rc.0'
    api 'host.exp.exponent:expo-face-detector:1.1.0-rc.0'
    api 'host.exp.exponent:expo-file-system:1.1.0-rc.0'
    api 'host.exp.exponent:expo-file-system-interface:1.1.0-rc.0'
    api 'host.exp.exponent:expo-payments-stripe:1.1.0-rc.0'
    api 'host.exp.exponent:expo-permissions:1.2.0-rc.0'
    api 'host.exp.exponent:expo-permissions-interface:1.2.0-rc.0'
    api 'host.exp.exponent:expo-constants:1.1.0-rc.0'
    api 'host.exp.exponent:expo-constants-interface:1.1.0-rc.0'
    api 'host.exp.exponent:expo-image-loader-interface:1.1.0-rc.0'
    api 'host.exp.exponent:expo-gl:1.1.0-rc.0'
    api 'host.exp.exponent:expo-gl-cpp:1.1.0-rc.0'
    api 'host.exp.exponent:expo-sms:1.1.0-rc.0'
    api 'host.exp.exponent:expo-print:1.1.0-rc.0'
    api 'host.exp.exponent:expo-media-library:1.1.0-rc.0'
    api 'host.exp.exponent:expo-analytics-segment:1.1.0-rc.0'
    api 'host.exp.exponent:expo-font:1.1.0-rc.0'
    api 'host.exp.exponent:expo-location:1.1.0-rc.0'
    api 'host.exp.exponent:expo-barcode-scanner-interface:1.1.0-rc.0'
    api 'host.exp.exponent:expo-barcode-scanner:1.1.0-rc.0'
    api 'host.exp.exponent:expo-contacts:1.1.0-rc.0'
    api 'host.exp.exponent:expo-ads-admob:1.1.0-rc.0'
    api 'host.exp.exponent:expo-local-authentication:1.1.0-rc.0'
    api 'host.exp.exponent:expo-localization:1.0.0-rc.0'
    END UNCOMMENT WHEN DISTRIBUTING */
  
    // WHEN_DISTRIBUTING_REMOVE_FROM_HERE
    api project(':ReactAndroid')
  
    // Universal modules
    api project(':expo-react-native-adapter')
    api project(':expo-core')
    api project(':expo-camera')
    api project(':expo-camera-interface')
    api project(':expo-sensors')
    api project(':expo-sensors-interface')
    api project(':expo-face-detector')
    api project(':expo-file-system')
    api project(':expo-file-system-interface')
    api project(':expo-font')
    api project(':expo-payments-stripe')
    api project(':expo-permissions')
    api project(':expo-permissions-interface')
    api project(':expo-constants')
    api project(':expo-constants-interface')
    api project(':expo-image-loader-interface')
    api project(':expo-gl')
    api project(':expo-gl-cpp')
    api project(':expo-sms')
    api project(':expo-print')
    api project(':expo-media-library')
    api project(':expo-analytics-segment')
    api project(':expo-location')
    api project(':expo-barcode-scanner')
    api project(':expo-barcode-scanner-interface')
    api project(':expo-contacts')
    api project(':expo-ads-admob')
    api project(':expo-local-authentication')
    api project(':expo-localization')
  
    // Versioned react native
    // WHEN_PREPARING_SHELL_REMOVE_FROM_HERE
    // THIS COMMENT IS USED BY android-build-aar.sh DO NOT MODIFY
    // BEGIN_SDK_30
    api 'host.exp:reactandroid-abi30_0_0:1.0.0'
    // END_SDK_30
    // BEGIN_SDK_29
    api'host.exp:reactandroid-abi29_0_0:1.0.0'
    // END_SDK_29
    // BEGIN_SDK_28
    api 'host.exp:reactandroid-abi28_0_0:1.0.0'
    // END_SDK_28
    // BEGIN_SDK_27
    api 'host.exp:reactandroid-abi27_0_0:1.0.0'
    // END_SDK_27
    // BEGIN_SDK_26
    api 'host.exp:reactandroid-abi26_0_0:1.0.0'
    // END_SDK_26
    // BEGIN_SDK_25
    api 'host.exp:reactandroid-abi25_0_0:1.0.0'
    // END_SDK_25
    // WHEN_PREPARING_SHELL_REMOVE_TO_HERE
    // WHEN_VERSIONING_REMOVE_TO_HERE
    // WHEN_DISTRIBUTING_REMOVE_TO_HERE
  
    // React native dependencies
    // We use a different version of appcompat
    api 'com.facebook.fresco:fresco:1.0.1'
    api 'com.facebook.fresco:animated-gif:1.0.1'
    api 'com.facebook.fresco:animated-webp:1.0.1'
    api 'com.facebook.fresco:webpsupport:1.0.1'
    api 'expolib_v1.com.facebook.fresco:expolib_v1-imagepipeline-okhttp3:1.0.1'
    api 'com.facebook.stetho:stetho:1.3.1'
    api 'com.facebook.stetho:stetho-okhttp3:1.3.1'
    provided 'com.facebook.soloader:soloader:0.5.1'
    api 'com.fasterxml.jackson.core:jackson-core:2.2.3'
    api 'com.google.code.findbugs:jsr305:3.0.0'
    api 'expolib_v1.com.squareup.okhttp3:okhttp:3.6.0'
    api 'expolib_v1.com.squareup.okhttp3:okhttp-urlconnection:3.6.0'
    api 'expolib_v1.com.squareup.okio:okio:1.13.0'
    api 'org.webkit:android-jsc:r224109'
  
    // Our dependencies
    api 'com.android.support:appcompat-v7:27.1.1'
    api 'com.android.support:customtabs:27.1.1'
    api('com.crashlytics.sdk.android:crashlytics:2.5.5@aar') {
      transitive = true;
    }
    api 'com.facebook.android:facebook-android-sdk:4.38.0'
    api('com.facebook.android:audience-network-sdk:4.99.0') {
      exclude module: 'play-services-ads'
    }
    compileOnly 'org.glassfish:javax.annotation:3.1.1'
    api 'de.greenrobot:eventbus:2.4.0'
    api 'com.amplitude:android-sdk:2.9.2' // Be careful when upgrading! Upgrading might break experience scoping. Check with Jesse. See Analytics.resetAmplitudeDatabaseHelper
    api 'com.squareup.picasso:picasso:2.5.2'
    api 'com.google.android.gms:play-services-gcm:15.0.1'
    api 'com.google.android.gms:play-services-analytics:16.0.1'
    api 'com.google.android.gms:play-services-maps:15.0.1'
    api 'com.google.android.gms:play-services-auth:15.0.1'
    api 'com.google.android.gms:play-services-location:15.0.1'
    api 'com.google.android.gms:play-services-fitness:15.0.1'
    api 'com.google.android.gms:play-services-wallet:15.0.1' //may need 10.+
    annotationProcessor 'com.raizlabs.android:DBFlow-Compiler:2.2.1'
    api "com.raizlabs.android:DBFlow-Core:2.2.1"
    api "com.raizlabs.android:DBFlow:2.2.1"
    api "com.madgag.spongycastle:core:1.53.0.0"
    api "com.madgag.spongycastle:prov:1.53.0.0"
    debugApi 'com.squareup.leakcanary:leakcanary-android-no-op:1.4-beta1'
    // debugApi 'com.squareup.leakcanary:leakcanary-android:1.4-beta1'
    releaseApi 'com.squareup.leakcanary:leakcanary-android-no-op:1.4-beta1'
    api 'commons-io:commons-io:1.3.2'
    // Newer version introduces dependency versions conflict
    // on 'com.android.support:support-annotations'
    api 'com.google.android.exoplayer:exoplayer:2.6.1'
    // expolib_v1-extension-okhttp is an exoplayer:extension-okhttp using expolib_v1.okhttp,
    // created with tools/android-versioning and distributed in expokit-npm-package.
    api 'expolib_v1.com.google.android.exoplayer:expolib_v1-extension-okhttp:2.6.1@aar'
    api 'me.leolin:ShortcutBadger:1.1.4@aar'
    api 'com.nostra13.universalimageloader:universal-image-loader:1.9.5'
    api 'com.theartofdev.edmodo:android-image-cropper:2.4.7'
    api 'com.yqritc:android-scalablevideoview:1.0.1'
    api 'commons-codec:commons-codec:1.10'
    api 'net.openid:appauth:0.4.1'
    api('com.airbnb.android:lottie:2.5.5') {
      exclude group: 'com.android.support', module: 'appcompat-v7'
    }
    api 'io.branch.sdk.android:library:2.17.1'
    api 'com.android.support:exifinterface:27.1.1'
    api 'com.google.firebase:firebase-core:16.0.1'
    api 'com.google.firebase:firebase-messaging:17.1.0'
    api 'com.google.maps.android:android-maps-utils:0.5+'
    api 'com.jakewharton:butterknife:8.4.0'
    annotationProcessor 'com.jakewharton:butterknife-compiler:8.8.1'
    // Remember to update DetachAppTemplate build.gradle if you add any excludes or transitive = false here!
  
    // expo-file-system
    api 'com.squareup.okhttp3:okhttp:3.10.0'
    api 'com.squareup.okhttp3:okhttp-urlconnection:3.10.0'
  }
  