L’application Flutter s’exécute sur le téléphone ; l’API est un service distinct qui gère par exemple la connexion et l’enregistrement des données. Publier l’application sur Google Play ou l’App Store ne publie pas ce backend. Il faut le déployer sur une adresse publique et tester la version installée.
Remplacez localhost par l’adresse publique
localhost désigne toujours l’appareil qui effectue la requête. Sur un téléphone, il pointe vers le téléphone, pas vers l’ordinateur de développement. En production, utilisez une URL HTTPS publique comme https://api.exemple.fr. Vérifiez le DNS, le certificat et la réponse attendue. Ne désactivez pas la validation TLS pour masquer un problème de certificat.
Un émulateur peut utiliser une adresse réservée au développement pour joindre l’ordinateur hôte ; un téléphone physique peut nécessiter une adresse accessible sur le réseau local. Séparez ces réglages de la version de production et vérifiez l’URL réellement intégrée au build.
Configurez les requêtes et vérifiez les réponses
La recette réseau officielle de Flutter présente le paquet http. Ajoutez-le avec flutter pub add http et centralisez l’URL de base. Un paramètre de build comme --dart-define=API_BASE_URL=https://api.exemple.fr sélectionne un endpoint public, mais sa valeur peut être extraite de l’application compilée. Il ne protège pas de mots de passe ni de clés privées.
Vérifiez le statut HTTP et le type de réponse avant de décoder le JSON. Gérez les sessions expirées, erreurs serveur, réponses mal formées et pertes de réseau. Testez le build de production sur Android et iOS : un appel réussi dans le simulateur ne prouve pas que la version destinée aux stores utilise le bon endpoint.
Gardez les secrets sur le serveur
Le binaire mobile est accessible aux utilisateurs. N’y mettez pas de mot de passe de base de données, jeton administrateur ou identifiant privé de service. L’API doit authentifier chaque requête et vérifier les droits sur la ressource. Validez les entrées, limitez les abus et évitez d’écrire jetons ou données personnelles dans les logs. La fiche de sécurité REST OWASP présente les contrôles serveur courants.
Les requêtes Flutter natif ne suivent pas les règles CORS des navigateurs. Flutter Web y est soumis ; identifiez le client concerné avant de modifier CORS.
Où exécuter l’API ?
Si l’API est compatible avec le plan Projects, le déploiement depuis Git peut convenir. Si elle requiert des paquets système, plusieurs processus ou un contrôle complet, un VPS offre cette liberté, avec la responsabilité des mises à jour, sauvegardes et mesures de sécurité. Hostbrid héberge le backend ; vous restez responsable de son code, des données et de la publication mobile. Comparez Projects et VPS pour les applications mobiles.
Avant la soumission, vérifiez l’URL HTTPS publique du build, l’absence de localhost et de secrets, et testez succès, erreur d’authentification et perte réseau. Comparez une API personnalisée à Firebase et consultez la checklist React Native en production si vous prenez en charge les deux frameworks.
Avant de commander, comparez où héberger une API : Projects ou VPS selon le runtime et la responsabilité de maintenance.