plugins {
    id 'com.android.library'
}

android {
    namespace 'org.aomedia.avif.android'
    compileSdk 31
    ndkVersion "25.2.9519653"

    defaultConfig {
        minSdk 21
        targetSdk 31
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner 'androidx.test.runner.AndroidJUnitRunner'
    }

    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
        }
    }
    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }
    externalNativeBuild {
        cmake {
            version '3.22.1'
            path 'src/main/jni/CMakeLists.txt'
        }
    }
}

dependencies {
    implementation "androidx.annotation:annotation:1.6.0"
    androidTestImplementation 'junit:junit:4.+'
    androidTestImplementation 'androidx.test.ext:junit:1.1.5'
    androidTestImplementation 'com.google.truth:truth:1.1.3'
    androidTestImplementation 'androidx.test:runner:1.5.2'
}
