diff --git a/workout-logger/android/app/build.gradle.kts b/workout-logger/android/app/build.gradle.kts index 727fd5e..6afbefa 100644 --- a/workout-logger/android/app/build.gradle.kts +++ b/workout-logger/android/app/build.gradle.kts @@ -61,11 +61,16 @@ android { } release { // Uses the production EC P-256 keystore when KEYSTORE_PATH env var is set - // (CI injects it via GitHub Secrets). Falls back to debug key for local - // flutter run --release without env vars configured. - val releaseConfig = signingConfigs.getByName("release") - signingConfig = if (releaseConfig.storeFile != null) releaseConfig - else signingConfigs.getByName("debug") + // (CI injects it via GitHub Secrets). Falls back to the debug key for a + // local `flutter run --release` without env vars configured. + // + // This MUST stay on a single line beginning with `signingConfig` so the + // F-Droid build server's signing-key stripper removes the whole statement + // (it deletes the `signingConfigs { ... }` block too, after which any + // surviving reference like `signingConfigs.getByName("release")` would + // fail with "SigningConfig with name 'release' not found"). F-Droid then + // signs the APK with its own key. + signingConfig = signingConfigs.findByName("release")?.takeIf { it.storeFile != null } ?: signingConfigs.getByName("debug") } } } diff --git a/workout-logger/fastlane/metadata/android/en-US/short_description.txt b/workout-logger/fastlane/metadata/android/en-US/short_description.txt index 81d203c..87804a8 100644 --- a/workout-logger/fastlane/metadata/android/en-US/short_description.txt +++ b/workout-logger/fastlane/metadata/android/en-US/short_description.txt @@ -1 +1 @@ -Workout logger with AI coaching, progress analytics, and Health Connect integration \ No newline at end of file +Workout logger with AI coaching, analytics & Health Connect integration