fix(android): brancher les classements sur les vrais IDs Play Jeux
La console Play génère les IDs de leaderboard (format CgkI…), contrairement à l'hypothèse de la spec : l'app demandait des boards questions_N inexistants, d'où un chargement infini et des scores silencieusement perdus. Remplacer le mapping par la table des vrais IDs (GameConfig.leaderboardId() devient nullable, null = pas de board) et logguer les échecs GMS jusqu'ici avalés par runCatching. Spec corrigée en conséquence (§6, §7).
This commit is contained in:
5 files changed
+60
-14
No files matched your search
@@ -92,16 +92,19 @@ interface GamesServices {
|
||||
23 à 24 — abandon des appareils Android 6, décision produit du 2026-08-28).
|
||||
- La dépendance GMS reste confinée à `androidApp` ; sharedUI ne dépend que de
|
||||
l'interface (aucun impact desktop/iOS).
|
||||
- Les IDs de leaderboard sont définis à la création en console (IDs custom
|
||||
`questions_5` … `questions_50`), donc le mapping commonMain est trivial et stable.
|
||||
- Les IDs de leaderboard sont générés automatiquement par la console (format `CgkI…`,
|
||||
non personnalisables — correction 2026-08-31 : le mapping commonMain est donc une
|
||||
table en dur des IDs réels, `GameConfig.leaderboardId(): String?`, `null` si le
|
||||
nombre de questions n'a pas de board).
|
||||
|
||||
## 7. Prérequis Play Console (manuel, hors code)
|
||||
|
||||
1. Créer l'app dans Play Console (package `com.livrets.androidApp`).
|
||||
2. Jouer → Play Jeux Services : créer le jeu, lier l'app Android, ajouter les
|
||||
empreintes SHA-1 debug et release.
|
||||
3. Créer les 10 leaderboards avec IDs `questions_5` … `questions_50`
|
||||
(« 5 questions » … « 50 questions »).
|
||||
3. Créer les 10 leaderboards (« 5 questions » … « 50 questions ») ; la console génère
|
||||
les IDs (`CgkI…`), à reporter dans `Leaderboards.kt` (correction 2026-08-31 : pas
|
||||
d'ID personnalisable).
|
||||
4. Ajouter des testeurs PGS pour valider la connexion en développement.
|
||||
|
||||
Sans ce setup, toutes les opérations échouent silencieusement : aucune régression
|
||||
|
||||
Reference in new issue
Block a user