apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-kapt'

android {
    compileSdkVersion = 35
    ndkVersion '27.2.12479018'
    defaultConfig {
        applicationId = 'kr.co.rito.ritosip'
        minSdkVersion 29
        targetSdkVersion 35
        versionCode = 100
        versionName = '1.0.0'
        externalNativeBuild {
            cmake {
                cFlags '-DHAVE_INTTYPES_H -lstdc++'
                arguments '-DANDROID_STL=c++_shared'
                version '3.25.1'
            }
        }
        ndk {
            // noinspection ChromeOsAbiSupport
            //abiFilters 'armeabi-v7a', 'arm64-v8a' //, 'x86_64'
            abiFilters 'arm64-v8a' //, 'x86_64'
        }
        vectorDrawables.useSupportLibrary = true
    }
    compileOptions {
        sourceCompatibility = JavaVersion.VERSION_17
        targetCompatibility = JavaVersion.VERSION_17
    }
    kotlinOptions {
        jvmTarget = '17'
    }
    splits {
        abi {
            reset()
            //noinspection ChromeOsAbiSupport
            //include 'armeabi-v7a', 'arm64-v8a'
            include 'arm64-v8a'
        }
    }
    buildTypes {
        release {
            // minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'),
                    'proguard-rules.pro'
        }
    }
    android.applicationVariants.all { variant ->
        variant.outputs.all {
            outputFileName = "ritosip-${defaultConfig.versionName}.apk"
        }
    }
    buildFeatures {
        viewBinding true
        dataBinding true
        buildConfig true
    }
    sourceSets {
        main.java.srcDirs += 'src/main/kotlin'
    }
    externalNativeBuild {
        cmake {
            path 'src/main/cpp/CMakeLists.txt'
        }
    }
    namespace 'com.tutpro.baresip.plus'
}

dependencies {
    implementation fileTree(include: ['*.jar'], dir: 'libs')
    implementation 'androidx.appcompat:appcompat:1.7.0'
    implementation 'androidx.constraintlayout:constraintlayout:2.2.0'
    implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8:$kotlin_version"
    implementation 'com.google.android.material:material:1.12.0'
    implementation 'androidx.cardview:cardview:1.0.0'
    implementation 'androidx.localbroadcastmanager:localbroadcastmanager:1.1.0'
    implementation "androidx.swiperefreshlayout:swiperefreshlayout:1.1.0"
    implementation "androidx.preference:preference-ktx:1.2.1"
    implementation "androidx.exifinterface:exifinterface:1.3.7"
    implementation "androidx.core:core-ktx:1.15.0"
    implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.9.0'
    implementation "androidx.lifecycle:lifecycle-extensions:2.2.0"
    implementation "androidx.activity:activity-ktx:1.9.3"
    implementation "androidx.fragment:fragment-ktx:1.8.5"
    implementation 'androidx.media:media:1.7.0'
}

