Files
flutterApp/packages/video_player_android/example/android/build.gradle

60 lines
2.3 KiB
Groovy

allprojects {
repositories {
// See https://github.com/flutter/flutter/blob/master/docs/ecosystem/Plugins-and-Packages-repository-structure.md#gradle-structure for more info.
def artifactRepoKey = 'ARTIFACT_HUB_REPOSITORY'
if (System.getenv().containsKey(artifactRepoKey)) {
println "Using artifact hub"
maven { url System.getenv(artifactRepoKey) }
}
google()
mavenCentral()
}
}
rootProject.buildDir = '../build'
subprojects {
project.buildDir = "${rootProject.buildDir}/${project.name}"
}
subprojects {
project.evaluationDependsOn(':app')
}
tasks.register("clean", Delete) {
delete rootProject.buildDir
}
// Build the plugin project with warnings enabled. This is here rather than
// in the plugin itself to avoid breaking clients that have different
// warnings (e.g., deprecation warnings from a newer SDK than this project
// builds with).
gradle.projectsEvaluated {
project(":video_player_android") {
tasks.withType(JavaCompile) {
options.compilerArgs << "-Xlint:all" << "-Werror"
// Workaround for several warnings when building
// that the above turns into errors, coming from
// org.checkerframework.checker.nullness.qual and
// com.google.errorprone.annotations:
//
// warning: Cannot find annotation method 'value()' in type
// 'EnsuresNonNull': class file for
// org.checkerframework.checker.nullness.qual.EnsuresNonNull not found
//
// warning: Cannot find annotation method 'replacement()' in type
// 'InlineMe': class file for
// com.google.errorprone.annotations.InlineMe not found
//
// The dependency version are taken from:
// https://github.com/google/ExoPlayer/blob/r2.18.1/constants.gradle
//
// For future reference the dependencies are excluded here:
// https://github.com/google/ExoPlayer/blob/r2.18.1/library/common/build.gradle#L33-L34
dependencies {
implementation("org.checkerframework:checker-qual:3.13.0")
implementation("com.google.errorprone:error_prone_annotations:2.10.0")
}
}
}
}