plugins { alias(libs.plugins.android.application) alias(libs.plugins.kotlin.android) } android { namespace = "net.mmanningau.speechtokeyboard" compileSdk = 36 defaultConfig { applicationId = "net.mmanningau.speechtokeyboard" minSdk = 28 targetSdk = 36 versionCode = 5 versionName = "1.0" testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" } buildTypes { release { isMinifyEnabled = false proguardFiles( getDefaultProguardFile("proguard-android-optimize.txt"), "proguard-rules.pro" ) } } compileOptions { sourceCompatibility = JavaVersion.VERSION_11 targetCompatibility = JavaVersion.VERSION_11 } kotlinOptions { jvmTarget = "11" } } dependencies { implementation(libs.androidx.core.ktx) implementation(libs.androidx.appcompat) implementation(libs.material) implementation(libs.androidx.activity) implementation(libs.androidx.constraintlayout) testImplementation(libs.junit) androidTestImplementation(libs.androidx.junit) androidTestImplementation(libs.androidx.espresso.core) // 1. The "Brain": Vosk Offline Speech Recognition implementation("com.alphacephei:vosk-android:0.3.47") // (Optional) Helper for memory management if needed later // Removed the following as it was listed as optional and it did cause errors - // so to avoid a whole list of duplicate class found errors - this is already required via the VOSK libraries // implementation("net.java.dev.jna:jna:5.13.0") // 2. The "Mouth": USB Serial Driver for Android implementation("com.github.mik3y:usb-serial-for-android:3.7.0") }