From f038dbe0ee20b9dc879773e6c492523465c06403 Mon Sep 17 00:00:00 2001 From: Gato Date: Sat, 6 Jun 2026 08:09:54 +0200 Subject: [PATCH] =?UTF-8?q?feat:=20version=20v0.0.1=20affich=C3=A9e=20en?= =?UTF-8?q?=20bas=20du=20drawer=20(BuildConfig.VERSION=5FNAME)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Sonnet 4.6 --- .claude/rules/deploy.md | 15 +++++++++++++++ .claude/rules/version.md | 17 +++++++++++++++++ app/build.gradle.kts | 3 ++- .../java/com/planify/mobile/ui/MainScreen.kt | 11 +++++++++++ 4 files changed, 45 insertions(+), 1 deletion(-) create mode 100644 .claude/rules/deploy.md create mode 100644 .claude/rules/version.md diff --git a/.claude/rules/deploy.md b/.claude/rules/deploy.md new file mode 100644 index 0000000..69e5d13 --- /dev/null +++ b/.claude/rules/deploy.md @@ -0,0 +1,15 @@ +# Règles — Déploiement après commit + +## Comportement attendu +Après chaque `git commit` (et `git push`), lancer systématiquement l'installation sur le device physique : + +```bash +JAVA_HOME=/home/Gato/.jdks/temurin-25.0.2 PATH="$JAVA_HOME/bin:$PATH" \ + ./gradlew installDebug -Pandroid.injected.deployment.target.serial=89UDU18724006699 +``` + +## Notes +- Le serial `89UDU18724006699` est le device Android physique de test (Huawei ANE-LX1, Android 9) +- `JAVA_HOME` doit pointer sur Temurin 25 (JBR sans `jlink`) +- Si le device est `UNAUTHORIZED` : demander à l'utilisateur d'accepter la dialog ADB sur le téléphone +- Si `INSTALL_FAILED_UPDATE_INCOMPATIBLE` : demander à l'utilisateur de désinstaller l'appli manuellement puis relancer diff --git a/.claude/rules/version.md b/.claude/rules/version.md new file mode 100644 index 0000000..eaedcb5 --- /dev/null +++ b/.claude/rules/version.md @@ -0,0 +1,17 @@ +# Règles — Numéro de version + +## Format +`0.0.X` — incrémentation du dernier segment à chaque série de modifications. + +Exemples : `0.0.1` → `0.0.2` → `0.0.3` → ... → `0.1.0` (changement majeur) + +## Où modifier +`app/build.gradle.kts` → `versionName = "X.X.X"` + +## Comportement attendu +- Monter le numéro de version à chaque commit (ou série de commits dans la même session). +- La version s'affiche automatiquement en bas du menu latéral via `BuildConfig.VERSION_NAME`. +- Ne pas oublier de mettre à jour la version avant le commit final de chaque session. + +## Version actuelle +`0.0.1` diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 9b8b597..fa46500 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -16,7 +16,7 @@ android { minSdk = 26 targetSdk = 35 versionCode = 1 - versionName = "0.1.0" + versionName = "0.0.1" testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" } @@ -40,6 +40,7 @@ android { buildFeatures { compose = true + buildConfig = true } } diff --git a/app/src/main/java/com/planify/mobile/ui/MainScreen.kt b/app/src/main/java/com/planify/mobile/ui/MainScreen.kt index 53a6a2f..5cda640 100644 --- a/app/src/main/java/com/planify/mobile/ui/MainScreen.kt +++ b/app/src/main/java/com/planify/mobile/ui/MainScreen.kt @@ -3,9 +3,11 @@ package com.planify.mobile.ui import androidx.compose.foundation.layout.Row import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.fillMaxHeight +import androidx.compose.foundation.layout.fillMaxWidth import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.width +import androidx.compose.ui.text.style.TextAlign import androidx.compose.foundation.lazy.LazyColumn import androidx.compose.foundation.lazy.items import androidx.compose.material.icons.Icons @@ -165,6 +167,15 @@ fun MainScreen(viewModel: DrawerViewModel = hiltViewModel()) { }, ) Spacer(Modifier.height(8.dp)) + Text( + text = "v${com.planify.mobile.BuildConfig.VERSION_NAME}", + style = MaterialTheme.typography.labelSmall, + color = MaterialTheme.colorScheme.onSurfaceVariant, + textAlign = TextAlign.Center, + modifier = Modifier + .fillMaxWidth() + .padding(bottom = 16.dp), + ) } } ) {