apply plugin: 'com.android.application' android { compileSdkVersion 32 defaultConfig { applicationId "org.freedesktop.gstreamer.play" minSdkVersion 21 targetSdkVersion 32 versionCode 1 versionName "1.0" externalNativeBuild { ndkBuild { 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 "NDK_APPLICATION_MK=src/main/jni/Application.mk", "GSTREAMER_JAVA_SRC_DIR=src/main/java", "GSTREAMER_ROOT_ANDROID=$gstRoot", "GSTREAMER_ASSETS_DIR=src/main/assets" targets "gstplayer" // All archs except MIPS and MIPS64 are supported abiFilters 'armeabi-v7a', 'arm64-v8a', 'x86' // x86_64 abis disabled because of https://bugzilla.gnome.org/show_bug.cgi?id=795454 } } } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } externalNativeBuild { ndkBuild { path 'src/main/jni/Android.mk' } } 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' }