plugins { alias(libs.plugins.android.application) alias(libs.plugins.kotlin.android) } android { namespace 'at.lockstep' compileSdk 34 ndkVersion '29.0.14206865' defaultConfig { applicationId "at.lockstep" minSdk 24 targetSdk 34 versionCode 1 versionName "1.0" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" vectorDrawables { useSupportLibrary true } externalNativeBuild { cmake { //path 'src/main/cpp/CMakeLists.txt' //cppFlags '' arguments "-DANDROID_STL=c++_shared" //cppFlags "-std=c++14" //arguments '-DANDROID_STL=c++_static' //cppFlags "-Wl,-z,max-page-size=16384 -Wl,-z,common-page-size=4096" // should be provided by default by newer NDK (NDK r29) // armeabi and mips are deprecated in NDK r16 so we don't want to build for them // TODO: android manifest filters to include only these hardware archs //abiFilters 'armeabi-v7a', 'arm64-v8a', 'x86_64' //, 'x86', 'x86_64' abiFilters 'armeabi-v7a', 'arm64-v8a' //, 'aarch64' // 'arm64-v8a' ??? } } } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' } } compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8 } kotlinOptions { jvmTarget = '1.8' } buildFeatures { compose true prefab true } composeOptions { kotlinCompilerExtensionVersion '1.5.1' } packaging { resources { excludes += '/META-INF/{AL2.0,LGPL2.1}' } } externalNativeBuild { cmake { path file('src/main/cpp/CMakeLists.txt') version '3.22.1' } } } dependencies { implementation libs.oboe implementation libs.slf4j.api implementation libs.logback.android implementation libs.gson implementation libs.androidx.core.ktx implementation libs.androidx.lifecycle.runtime.ktx implementation libs.androidx.activity.compose implementation platform(libs.androidx.compose.bom) implementation libs.androidx.ui implementation libs.androidx.ui.graphics implementation libs.androidx.ui.tooling.preview implementation libs.androidx.material3 implementation libs.androidx.recyclerview implementation libs.androidx.appcompat testImplementation libs.junit androidTestImplementation libs.androidx.junit androidTestImplementation libs.androidx.espresso.core androidTestImplementation platform(libs.androidx.compose.bom) androidTestImplementation libs.androidx.ui.test.junit4 debugImplementation libs.androidx.ui.tooling debugImplementation libs.androidx.ui.test.manifest }