android: Update minimum SDK version to Android 21
[platform/upstream/gstreamer.git] / subprojects / gst-examples / webrtc / android / app / build.gradle
1 apply plugin: 'com.android.application'
2
3 android {
4     compileSdkVersion 32
5
6     defaultConfig {
7         applicationId "org.freedesktop.gstreamer.webrtc"
8         minSdkVersion 21
9         targetSdkVersion 32
10         versionCode 1
11         versionName "1.0"
12         archivesBaseName = "$applicationId-v$versionCode"
13
14         externalNativeBuild {
15             ndkBuild {
16                 def gstRoot
17
18                 if (project.hasProperty('gstAndroidRoot'))
19                     gstRoot = project.gstAndroidRoot
20                 else
21                     gstRoot = System.env.GSTREAMER_ROOT_ANDROID
22
23                 if (gstRoot == null)
24                     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')
25
26                 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", "V=1"
27
28                 targets "gstwebrtc"
29
30                 // All archs except MIPS and MIPS64 are supported
31                 abiFilters 'armeabi-v7a', 'arm64-v8a', 'x86', 'x86_64'
32             }
33         }
34     }
35
36     buildTypes {
37         release {
38             minifyEnabled false
39             proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
40         }
41     }
42
43     externalNativeBuild {
44         ndkBuild {
45             path 'src/main/jni/Android.mk'
46         }
47     }
48
49     lintOptions {
50         abortOnError false
51     }
52 }
53
54 afterEvaluate {
55     if (project.hasProperty('compileDebugJavaWithJavac'))
56         compileDebugJavaWithJavac.dependsOn 'externalNativeBuildDebug'
57     if (project.hasProperty('compileReleaseJavaWithJavac'))
58         compileReleaseJavaWithJavac.dependsOn 'externalNativeBuildRelease'
59 }
60
61 dependencies {
62     api fileTree(dir: 'libs', include: ['*.jar'])
63     testImplementation 'junit:junit:4.12'
64     implementation 'com.android.support:appcompat-v7:23.1.1'
65     implementation 'com.android.support.constraint:constraint-layout:1.0.2'
66 }