diff options
Diffstat (limited to 'mobile/android/geckoview_example/build.gradle')
-rw-r--r-- | mobile/android/geckoview_example/build.gradle | 63 |
1 files changed, 63 insertions, 0 deletions
diff --git a/mobile/android/geckoview_example/build.gradle b/mobile/android/geckoview_example/build.gradle new file mode 100644 index 000000000..33f8d8583 --- /dev/null +++ b/mobile/android/geckoview_example/build.gradle @@ -0,0 +1,63 @@ +buildDir "${topobjdir}/gradle/build/mobile/android/geckoview_example" + +apply plugin: 'com.android.application' + +android { + compileSdkVersion 23 + buildToolsVersion mozconfig.substs.ANDROID_BUILD_TOOLS_VERSION + + defaultConfig { + applicationId "org.mozilla.geckoview_example" + minSdkVersion 15 + targetSdkVersion 23 + versionCode 1 + versionName "1.0" + testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" + } + + // This is extremely frustrating, but the only way to do it automation for + // now. Without this, we only get a "debugAndroidTest" configuration; we + // have no "withoutGeckoBinariesAndroidTest" configuration. + testBuildType "withoutGeckoBinaries" + buildTypes { + release { + minifyEnabled false + proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' + } + withGeckoBinaries { // For consistency with :geckoview project in Task Cluster invocations. + initWith debug + } + withoutGeckoBinaries { // Logical negation of withGeckoBinaries. + initWith debug + } + } +} + +dependencies { + testCompile 'junit:junit:4.12' + + compile 'com.android.support:support-annotations:23.4.0' + + androidTestCompile 'com.android.support.test.espresso:espresso-core:2.2.2' + androidTestCompile 'com.android.support.test:runner:0.5' + // Not defining this library again results in test-app assuming 23.1.1, and the following errors: + // "Conflict with dependency 'com.android.support:support-annotations'. Resolved versions for app (23.4.0) and test app (23.1.1) differ." + androidTestCompile 'com.android.support:support-annotations:23.4.0' + + compile project(':geckoview') +} + +apply from: "${topsrcdir}/mobile/android/gradle/with_gecko_binaries.gradle" + +android.applicationVariants.all { variant -> + // Like 'debug', 'release', or 'withoutGeckoBinaries'. + def buildType = variant.buildType.name + + // It would be most natural for :geckoview to always include the Gecko + // binaries, but that's difficult; see the notes in + // mobile/android/gradle/with_gecko_binaries.gradle. Instead we handle our + // own Gecko binary inclusion. + if (!buildType.equals('withoutGeckoBinaries')) { + configureVariantWithGeckoBinaries(variant) + } +} |