muzzle-velocity/android/app/build.gradle
randogoth 2519a3a337
All checks were successful
Release APK / build (push) Successful in 3m17s
feat: set up signed release pipeline for Forgejo
Adds env-var-driven release signing, fastlane metadata for F-Droid/Obtainium
listings, and a tag-triggered .forgejo workflow that builds, signs, and
publishes the APK as a Forgejo release.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-10-14 10:01:36 +03:00

55 lines
1.8 KiB
Groovy

plugins {
id "com.android.application"
id "kotlin-android"
// The Flutter Gradle Plugin must be applied after the Android and Kotlin Gradle plugins.
id "dev.flutter.flutter-gradle-plugin"
}
android {
namespace = "vision.flux.muzzlevelocity"
compileSdk = flutter.compileSdkVersion
// The devbox-managed SDK ships this NDK and is read-only, so Gradle
// cannot install the Flutter default beside it.
ndkVersion = "27.0.12077973"
compileOptions {
sourceCompatibility = JavaVersion.VERSION_17
targetCompatibility = JavaVersion.VERSION_17
}
kotlinOptions {
jvmTarget = JavaVersion.VERSION_17
}
defaultConfig {
// TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html).
applicationId = "vision.flux.muzzlevelocity"
// You can update the following values to match your application needs.
// For more information, see: https://flutter.dev/to/review-gradle-config.
minSdk = flutter.minSdkVersion
targetSdk = flutter.targetSdkVersion
versionCode = flutter.versionCode
versionName = flutter.versionName
targetSdkVersion 34
}
signingConfigs {
release {
storeFile = System.getenv("KEYSTORE_PATH") ? file(System.getenv("KEYSTORE_PATH")) : null
storePassword = System.getenv("STORE_PASSWORD")
keyAlias = System.getenv("KEY_ALIAS")
keyPassword = System.getenv("KEY_PASSWORD")
}
}
buildTypes {
release {
// Falls back to the debug keys locally, so `flutter run --release` keeps working.
signingConfig = System.getenv("KEYSTORE_PATH") ? signingConfigs.release : signingConfigs.debug
}
}
}
flutter {
source = "../.."
}