Files
geo/app/tests-android.md
Pierre 5e255ebf5e feat: Implémentation authentification NIST SP 800-63B v3.0.8
- Ajout du service PasswordSecurityService conforme NIST SP 800-63B
- Vérification des mots de passe contre la base Have I Been Pwned
- Validation : minimum 8 caractères, maximum 64 caractères
- Pas d'exigences de composition obligatoires (conforme NIST)
- Intégration dans LoginController et UserController
- Génération de mots de passe sécurisés non compromis

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-15 15:31:23 +02:00

5.8 KiB
Raw Blame History

📱 Guide de Test Mobile - Geosector App

🚀 Configuration Rapide

1 Préparation du Mobile Android

Activer le Mode Développeur

Paramètres → À propos du téléphone → Tapoter 7 fois sur "Numéro de build"

Activer les Options de Développement

Paramètres → Options pour les développeurs → Activer :
✅ Options pour les développeurs
✅ Débogage USB
✅ Débogage sans fil (pour WiFi)

🔌 Test via USB

Connexion USB

  1. Brancher le téléphone en USB-C
  2. Accepter l'autorisation de débogage sur le téléphone

Commandes Terminal

# Vérifier la connexion
adb devices
flutter devices

# Lancer l'app (mode debug avec hot reload)
flutter run

# Lancer l'app sur un appareil spécifique
flutter run -d [DEVICE_ID]

📶 Test via WiFi (Sans Fil)

Configuration sur le Mobile

  1. Activer le Débogage sans fil dans Options pour les développeurs
  2. Entrer dans "Débogage sans fil" et noter :
    • Nom de l'appareil (ex: Pi25)
    • Adresse IP et port (ex: 192.168.1.103:33503)

Première Connexion (avec code d'association)

# Si première connexion, associer avec code
# Sur mobile : "Associer l'appareil avec un code d'association"
adb pair [IP:PORT_ASSOCIATION] [CODE_6_CHIFFRES]
# Exemple : adb pair 192.168.1.103:37953 123456

Connexion Standard

# Connecter via WiFi
adb connect [IP:PORT]
# Exemple : adb connect 192.168.1.103:33503

# Vérifier la connexion
adb devices
flutter devices

# Lancer l'app
flutter run -d [IP:PORT]
# Exemple : flutter run -d 192.168.1.103:33503

🎯 Modes de Compilation

Mode Debug (Développement)

# Avec hot reload, logs complets, banner DEBUG
flutter run
flutter run -d [DEVICE_ID]

Raccourcis pendant l'exécution :

  • r : Hot reload (rechargement rapide)
  • R : Hot restart (redémarrage complet)
  • p : Afficher le widget tree
  • o : Basculer Android/iOS preview
  • q : Quitter

Mode Release (Performance)

# Optimisé, rapide, sans debug
flutter run --release
flutter run -d [DEVICE_ID] --release

Mode Profile (Analyse)

# Pour profiler les performances
flutter run --profile
flutter run -d [DEVICE_ID] --profile

📦 Build et Installation

Créer l'APK

# APK standard
flutter build apk

# APK optimisé pour release
flutter build apk --release

# APK avec obfuscation
flutter build apk --release --obfuscate --split-debug-info=debug_info

# APK split par architecture (plus petit)
flutter build apk --split-per-abi

Installer l'APK

# Installer sur appareil connecté
flutter install
flutter install -d [DEVICE_ID]

# Installer un APK spécifique
adb install build/app/outputs/flutter-apk/app-release.apk

Bundle pour Play Store

flutter build appbundle --release

🔧 Commandes Utiles

Gestion des Appareils

# Lister tous les appareils
flutter devices

# Infos détaillées ADB
adb devices -l

# Déconnecter un appareil WiFi
adb disconnect [IP:PORT]

# Redémarrer ADB
adb kill-server
adb start-server

Nettoyage et Réparation

# Nettoyer le projet
flutter clean

# Réinstaller les dépendances
flutter pub get

# Régénérer les fichiers
flutter pub run build_runner build --delete-conflicting-outputs

# Vérifier l'installation Flutter
flutter doctor

Logs et Débogage

# Voir les logs du téléphone
adb logcat

# Logs Flutter uniquement
flutter logs

# Capturer une capture d'écran
adb shell screencap -p /sdcard/screenshot.png
adb pull /sdcard/screenshot.png

📱 Tests sur le Mobile

Vérifications Visuelles

  • AppBar : Logo Geosector + Logo Amicale (si disponible)
  • Navigation :
    • Admin : Bordure rouge, menu sélectionné en rouge/gras
    • User : Bordure verte, menu sélectionné en vert/gras
  • Menu Mobile : Icônes uniquement en bas (sans texte)
  • Responsive : Adaptation portrait/paysage

Tests Fonctionnels

  • Connexion/Déconnexion
  • Navigation entre les pages
  • Formulaires et validations
  • Synchronisation des données
  • Mode hors-ligne

Performance

  • Temps de chargement
  • Fluidité du scroll
  • Réactivité des boutons
  • Consommation mémoire

🆘 Résolution de Problèmes

Appareil Non Détecté

# Vérifier les drivers USB
adb devices

# Relancer ADB
adb kill-server
adb start-server

# Vérifier Flutter
flutter doctor -v

Erreur de Connexion WiFi

# Vérifier le réseau (même WiFi PC et mobile)
ping [IP_MOBILE]

# Réassocier l'appareil
adb pair [IP:PORT] [CODE]

# Forcer la reconnexion
adb disconnect
adb connect [IP:PORT]

Build Échoué

# Nettoyer et reconstruire
flutter clean
flutter pub get
flutter run

💡 Tips & Astuces

  1. Gardez le téléphone déverrouillé pendant les tests
  2. Désactivez l'économie d'énergie pour éviter les déconnexions
  3. Utilisez le mode Release pour tester les vraies performances
  4. Activez "Rester éveillé" dans Options développeur
  5. WiFi stable : Préférez le 5GHz au 2.4GHz si disponible

📊 Exemple de Session Type

# 1. Connexion WiFi
adb connect 192.168.1.103:33503

# 2. Vérification
flutter devices

# 3. Lancement en debug
flutter run -d 192.168.1.103:33503

# 4. Tests et hot reload (touche r)

# 5. Test performance
flutter run -d 192.168.1.103:33503 --release

# 6. Build final
flutter build apk --release

📝 Notes Spécifiques Geosector

  • Environnement : L'app détecte automatiquement DEV/REC/PROD
  • Logos : Le logo amicale s'affiche si disponible en base64
  • Rôles : Admin (rouge) vs User (vert) dans l'interface
  • Cache : Utilise Hive pour le stockage local

Guide créé pour Geosector v3.0.6 - Flutter 3.32+