plugins { id 'com.android.application' id 'org.jetbrains.kotlin.android' } android { namespace 'com.minimind.mind2' compileSdk 34 defaultConfig { applicationId "com.minimind.mind2" minSdk 26 targetSdk 34 versionCode 1 versionName "1.0.0" ndk { abiFilters 'arm64-v8a', 'armeabi-v7a' } externalNativeBuild { cmake { cppFlags "-std=c++17 -O3 -ffast-math" arguments "-DANDROID_ARM_NEON=TRUE" } } } buildTypes { release { minifyEnabled true shrinkResources true proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' } debug { debuggable true } } externalNativeBuild { cmake { path file('../jni/CMakeLists.txt') version '3.22.1' } } compileOptions { sourceCompatibility JavaVersion.VERSION_17 targetCompatibility JavaVersion.VERSION_17 } kotlinOptions { jvmTarget = '17' } buildFeatures { viewBinding true compose true } composeOptions { kotlinCompilerExtensionVersion '1.5.3' } packagingOptions { jniLibs { useLegacyPackaging true } } // Asset compression settings aaptOptions { noCompress 'gguf', 'onnx', 'bin' } } dependencies { // Core Android implementation 'androidx.core:core-ktx:1.12.0' implementation 'androidx.appcompat:appcompat:1.6.1' implementation 'com.google.android.material:material:1.11.0' implementation 'androidx.constraintlayout:constraintlayout:2.1.4' // Jetpack Compose implementation platform('androidx.compose:compose-bom:2024.01.00') implementation 'androidx.compose.ui:ui' implementation 'androidx.compose.ui:ui-graphics' implementation 'androidx.compose.ui:ui-tooling-preview' implementation 'androidx.compose.material3:material3' implementation 'androidx.activity:activity-compose:1.8.2' implementation 'androidx.lifecycle:lifecycle-viewmodel-compose:2.7.0' // ONNX Runtime (optional - for ONNX deployment) implementation 'com.microsoft.onnxruntime:onnxruntime-android:1.16.3' // Coroutines implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.7.3' // Testing testImplementation 'junit:junit:4.13.2' androidTestImplementation 'androidx.test.ext:junit:1.1.5' androidTestImplementation 'androidx.test.espresso:espresso-core:3.5.1' }