Files
itstransport-android/app/build.gradle.kts
admin 5c2f089b4e
All checks were successful
Build & Deploy APK / build (push) Successful in 1m53s
fix: add signing config so release APK can be installed
The release build had no signing config, producing an unsigned APK
that Android refuses to install. Added debug keystore signing for
release builds and a CI step to ensure the keystore exists.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-25 22:08:41 +01:00

124 lines
3.2 KiB
Kotlin

plugins {
alias(libs.plugins.android.application)
alias(libs.plugins.google.services)
alias(libs.plugins.kotlin.android)
alias(libs.plugins.kotlin.compose)
alias(libs.plugins.hilt)
alias(libs.plugins.ksp)
}
android {
namespace = "pl.firmatpp.itstransport"
compileSdk = 35
signingConfigs {
create("release") {
storeFile = file("${System.getProperty("user.home")}/.android/debug.keystore")
storePassword = "android"
keyAlias = "androiddebugkey"
keyPassword = "android"
}
}
defaultConfig {
applicationId = "pl.firmatpp.itstransport"
minSdk = 26
targetSdk = 35
versionCode = 1
versionName = "1.0.0"
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
}
lint {
checkReleaseBuilds = false
abortOnError = false
}
buildTypes {
debug {
isMinifyEnabled = false
buildConfigField(
"String",
"API_BASE_URL",
"\"https://api-intranet.firmatpp.pl/api\""
)
}
release {
signingConfig = signingConfigs.getByName("release")
isMinifyEnabled = false
proguardFiles(
getDefaultProguardFile("proguard-android-optimize.txt"),
"proguard-rules.pro"
)
buildConfigField(
"String",
"API_BASE_URL",
"\"https://api-intranet.firmatpp.pl/api\""
)
}
}
compileOptions {
sourceCompatibility = JavaVersion.VERSION_17
targetCompatibility = JavaVersion.VERSION_17
}
kotlinOptions {
jvmTarget = "17"
}
buildFeatures {
compose = true
buildConfig = true
}
}
dependencies {
// Compose BOM
val composeBom = platform(libs.compose.bom)
implementation(composeBom)
androidTestImplementation(composeBom)
// Compose
implementation(libs.compose.ui)
implementation(libs.compose.ui.graphics)
implementation(libs.compose.ui.tooling.preview)
implementation(libs.compose.material3)
implementation(libs.compose.material.icons.extended)
debugImplementation(libs.compose.ui.tooling)
debugImplementation(libs.compose.ui.test.manifest)
androidTestImplementation(libs.compose.ui.test.junit4)
// Activity Compose
implementation(libs.activity.compose)
// Navigation Compose
implementation(libs.navigation.compose)
// Hilt
implementation(libs.hilt.android)
ksp(libs.hilt.compiler)
implementation(libs.hilt.navigation.compose)
// Retrofit + OkHttp
implementation(libs.retrofit)
implementation(libs.retrofit.converter.gson)
implementation(libs.okhttp)
implementation(libs.okhttp.logging.interceptor)
// Security (EncryptedSharedPreferences)
implementation(libs.security.crypto)
// Lifecycle
implementation(libs.lifecycle.viewmodel.compose)
implementation(libs.lifecycle.runtime.compose)
// Core KTX
implementation(libs.core.ktx)
// Firebase
implementation(platform(libs.firebase.bom))
implementation(libs.firebase.messaging)
}