Files
GameTime/.ideai/skills/md/8f126c3d-5b8c-48c0-97aa-cd9e5f0e7d5b.md
Blomios 917777e18b chore(wip): consolidation intermédiaire multi-tickets (sprints Statistiques, UI, Bug resolution, Serveur-client)
Regroupe l'état de travail en cours réalisé dans un même worktree sur
plusieurs tickets/sprints (#85, #136, #145, #155-160, #162-164),
mélangeant des tickets QA et inProgress. Ne constitue pas une feature
terminée : commit de sauvegarde avant triage/split par ticket en
branches feature/* dédiées. Exclut les dossiers d'environnement de
build locaux et le heap dump parasite (.gitignore mis à jour).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-28 16:48:54 +02:00

1.9 KiB

Objectif

Builder l'APK Android de la montre Wear OS GameTime de manière déterministe, sans recalculer l'environnement de build à chaque fois.

Usage obligatoire

Toujours lancer le script dédié depuis le project root :

bash .ideai/skills/scripts/build-watch-apk.sh debug

ou pour un build optimisé :

bash .ideai/skills/scripts/build-watch-apk.sh release

Par défaut, si aucun mode n'est donné, le script construit debug.

Ce que le script fixe automatiquement

  • réutilise le SDK Flutter writable dans .ideai/build-env/flutter-sdk ;
  • isole HOME, XDG_* et GRADLE_USER_HOME dans .ideai/build-env ;
  • force Java 21 via /usr/lib/jvm/java-21-openjdk ;
  • configure ANDROID_HOME=/opt/android-sdk et le PATH Android/Java ;
  • se place dans watch_app/ ;
  • lance flutter pub get puis flutter build apk.

Ne pas builder la montre depuis le root téléphone, et ne pas improviser une autre sortie de build : l'app montre a son propre projet Flutter sous watch_app/.

Sorties

  • Debug : watch_app/build/watch_app/app/outputs/flutter-apk/app-debug.apk
  • Release : watch_app/build/watch_app/app/outputs/flutter-apk/app-release.apk

Le script affiche le chemin final de l'APK.

Quand l'utiliser

  • Après tout changement Flutter/Android dans watch_app/.
  • Avant une installation ADB sur la montre.
  • Avant une vérification de connexion téléphone/montre.

Diagnostic rapide

  • Unsupported class file major version 70 : JAVA_HOME n'est pas sur Java 21.
  • No space left on device : manque d'espace dans le volume qui porte .ideai/build-env.
  • erreur adb: more than one device/emulator : le build est bon, le problème est au moment de l'installation ADB, pas du build.

Règle d'exécution

Pour builder l'APK montre, ne pas réfléchir à la recette : exécuter le script ci-dessus avec debug ou release, puis vérifier l'APK dans watch_app/build/watch_app/app/outputs/flutter-apk/.