89 lines
2.5 KiB
Plaintext
89 lines
2.5 KiB
Plaintext
buildscript {
|
|
repositories {
|
|
jcenter()
|
|
}
|
|
dependencies {
|
|
classpath 'com.android.tools.build:gradle:1.3.1'
|
|
}
|
|
}
|
|
|
|
allprojects {
|
|
repositories {
|
|
mavenLocal()
|
|
jcenter()
|
|
maven {
|
|
// All of React Native (JS, Obj-C sources, Android binaries) is installed from npm
|
|
url "$projectDir/../../react-native/android"
|
|
}
|
|
}
|
|
}
|
|
|
|
apply plugin: 'com.android.library'
|
|
|
|
task forwardDebugPort(type: Exec) {
|
|
def adb = android.getAdbExe()?.toString() ?: 'false'
|
|
commandLine adb, 'forward', 'tcp:8083', 'tcp:8083'
|
|
ignoreExitValue true
|
|
doLast {
|
|
if (execResult.getExitValue() != 0) {
|
|
logger.error(
|
|
'===========================================================================\n' +
|
|
'WARNING: Failed to automatically forward port 8083.\n' +
|
|
'In order to use Realm in Chrome debugging mode, port 8083 must be forwarded\n' +
|
|
'from localhost to the device or emulator being used to run the application.\n' +
|
|
'You may need to add the appropriate flags to the command that failed:\n' +
|
|
' adb forward tcp:8083 tcp:8083\n' +
|
|
'===========================================================================\n'
|
|
)
|
|
}
|
|
}
|
|
}
|
|
|
|
android {
|
|
compileSdkVersion 23
|
|
buildToolsVersion "23.0.1"
|
|
|
|
defaultConfig {
|
|
minSdkVersion 16
|
|
targetSdkVersion 22
|
|
}
|
|
|
|
tasks.withType(JavaCompile) {
|
|
compileTask -> compileTask.dependsOn forwardDebugPort
|
|
}
|
|
}
|
|
|
|
String getAppId () {
|
|
String myappId;
|
|
try {
|
|
String build = new File("$projectDir/../../../android/app/build.gradle").text
|
|
def matcher = build =~ 'applicationId.*"'
|
|
def appId = matcher.size() > 0 ? matcher[0].trim() - 'applicationId' - ~/\s/ : '';
|
|
myappId = appId.replaceAll('"', '')
|
|
} catch(all) {}
|
|
return myappId
|
|
}
|
|
|
|
apply from: 'analytics.gradle'
|
|
|
|
import groovy.json.JsonSlurper
|
|
|
|
def getNpmVersion() {
|
|
def inputFile = new File(buildscript.sourceFile.getParent() + "/../package.json")
|
|
def packageJson = new JsonSlurper().parseText(inputFile.text)
|
|
return packageJson["version"]
|
|
}
|
|
|
|
task send(type: SendAnalyticsTask) << {
|
|
applicationId = getAppId()
|
|
version = getNpmVersion().trim()
|
|
}
|
|
|
|
preBuild.dependsOn send
|
|
|
|
dependencies {
|
|
compile fileTree(dir: 'libs', include: ['*.jar'])
|
|
compile 'org.nanohttpd:nanohttpd:2.2.0'
|
|
compile 'com.facebook.react:react-native:+' // From node_modules
|
|
}
|