apply plugin: 'com.android.application'

android {
	namespace "org.iiab.controller"
	compileSdkVersion 34
	ndkVersion "26.3.11579264"

	defaultConfig {
		applicationId "org.iiab.controller"
		minSdkVersion 24
		targetSdkVersion 34
		versionCode 21
		versionName "v0.1.25alpha-debug"
		setProperty("archivesBaseName", "$applicationId-$versionName")
		ndk {
			abiFilters "armeabi-v7a", "arm64-v8a", "x86", "x86_64"
		}
		externalNativeBuild {
			ndkBuild {
				arguments "APP_CFLAGS+=-DPKGNAME=org/iiab/controller -DCLSNAME=TProxyService -ffile-prefix-map=${rootDir}=."
				arguments "APP_LDFLAGS+=-Wl,--build-id=none"
			}
		}
	}

	signingConfigs {
		release {
		}
	}

	buildTypes {
		release {
			minifyEnabled false
			signingConfig signingConfigs.release
		}
		debug {
			minifyEnabled false
			signingConfig signingConfigs.release
		}
	}

	def propsFile = rootProject.file('store.properties')
	def configName = 'release'

	if (propsFile.exists() && android.signingConfigs.hasProperty(configName)) {
		def props = new Properties()
		props.load(new FileInputStream(propsFile))
		if (props!=null && props.containsKey('storeFile')) {
			android.signingConfigs[configName].storeFile = rootProject.file(props['storeFile'])
			android.signingConfigs[configName].storePassword = props['storePassword']
			android.signingConfigs[configName].keyAlias = props['keyAlias']
			android.signingConfigs[configName].keyPassword = props['keyPassword']
		}
	}

	externalNativeBuild {
		ndkBuild {
			path "src/main/jni/Android.mk"
		}
	}

	lintOptions {
		checkReleaseBuilds false
		// Or, if you prefer, you can continue to check for errors in release builds,
		// but continue the build even when errors are found:
		abortOnError false
	}

	dependenciesInfo {
		// Disables dependency metadata when building APKs.
		includeInApk = false
		// Disables dependency metadata when building Android App Bundles.
		includeInBundle = false
	}
}

dependencies {
	implementation 'androidx.appcompat:appcompat:1.4.1'
	implementation 'androidx.biometric:biometric:1.1.0'
}
