gstreamer/subprojects/gst-examples/playback/player/android/app/build.gradle

61 lines
1.9 KiB
Groovy

apply plugin: 'com.android.application'
android {
compileSdkVersion 32
defaultConfig {
applicationId "org.freedesktop.gstreamer.play"
minSdkVersion 21
targetSdkVersion 32
versionCode 1
versionName "1.0"
externalNativeBuild {
cmake {
def gstRoot
if (project.hasProperty('gstAndroidRoot'))
gstRoot = project.gstAndroidRoot
else
gstRoot = System.env.GSTREAMER_ROOT_ANDROID
if (gstRoot == null)
throw new GradleException('GSTREAMER_ROOT_ANDROID must be set, or "gstAndroidRoot" must be defined in your gradle.properties in the top level directory of the unpacked universal GStreamer Android binaries')
arguments "-DCMAKE_BUILD_TYPE=Release", "-DANDROID_STL=c++_shared", "-DGStreamer_JAVA_SRC_DIR=java", "-DGSTREAMER_ROOT_ANDROID=$gstRoot", "-DGStreamer_ASSETS_DIR=assets"
targets "gstplayer"
// All archs except MIPS and MIPS64 are supported
abiFilters 'armeabi-v7a', 'arm64-v8a', 'x86', 'x86_64'
}
}
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
externalNativeBuild {
cmake {
path 'src/main/jni/CMakeLists.txt'
}
}
ndkVersion '25.2.9519653'
}
afterEvaluate {
if (project.hasProperty('compileDebugJavaWithJavac'))
project.compileDebugJavaWithJavac.dependsOn 'externalNativeBuildDebug'
if (project.hasProperty('compileReleaseJavaWithJavac'))
project.compileReleaseJavaWithJavac.dependsOn 'externalNativeBuildRelease'
}
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
testImplementation 'junit:junit:4.12'
implementation 'com.android.support:appcompat-v7:23.1.1'
}