J'essaye de suivre ce tutoriel " https://medium.com/flutter-io/google-maps-and-flutter-cfb330f9a245 " pour ajouter google map en flutter. J'ai mis à jour le manifeste Android avec la clé google map et ajouté une autorisation pour accéder à fine_location.J'obtiens un écran blanc sur mon émulateur sans carte. J'ai passé de nombreuses heures à essayer de le réparer mais en vain. J'ai également essayé l'exemple d'utilisation avec le plugin " https://pub.dartlang.org/packages/google_maps_flutter#-readme-tab- " mais rien n'aide à montrer la carte. Toute aide est appréciée, merci d'avance
13 Réponses :
En fait, je n'ai trouvé aucune réponse grâce à ma recherche de problèmes dans le didacticiel ci-dessus. Je trouve un autre moyen pour la carte et cela fonctionne bien avec mon donc je le posterai, car cela peut aider les autres. vous devez 1- l'ajouter dans pubspec.yaml pour obtenir le plugin. 2- ajoutez la clé pour Android et Ios 3- ajoutez ce code dans main.
import 'package:flutter/material.dart'; import 'package:google_maps_flutter/google_maps_flutter.dart'; void main() => runApp(MyApp()); class MyApp extends StatefulWidget { @override _MyAppState createState() => _MyAppState(); } class _MyAppState extends State<MyApp> { GoogleMapController myMapController; final Set<Marker> _markers = new Set(); static const LatLng _mainLocation = const LatLng(25.69893, 32.6421); @override Widget build(BuildContext context) { return MaterialApp( home: Scaffold( appBar: AppBar( title: Text('Maps With Marker'), backgroundColor: Colors.blue[900], ), body: Column( mainAxisAlignment: MainAxisAlignment.center, children: <Widget>[ Expanded( child: GoogleMap( initialCameraPosition: CameraPosition( target: _mainLocation, zoom: 10.0, ), markers: this.myMarker(), mapType: MapType.normal, onMapCreated: (controller) { setState(() { myMapController = controller; }); }, ), ), ], ))); } Set<Marker> myMarker() { setState(() { _markers.add(Marker( // This marker id can be anything that uniquely identifies each marker. markerId: MarkerId(_mainLocation.toString()), position: _mainLocation, infoWindow: InfoWindow( title: 'Historical City', snippet: '5 Star Rating', ), icon: BitmapDescriptor.defaultMarker, )); }); return _markers; } }
J'ai essayé le code ci-dessus (après avoir suivi les instructions de configuration et d'installation). Mais la carte ne s'affiche pas. J'obtiens un écran gris avec un marqueur au milieu de l'écran. J'ai également essayé l'exemple sur pub.dev/packages/google_maps_flutter#-installing-tab- avec le même résultat. Aucune erreur dans la console.
@SGoldwin, pouvez-vous me dire si votre émulateur prend en charge Google Play Store ou non?
J'utilise l'API 28 du Nexus 5X qui prend en charge Google Play. J'ai installé l'API 28 de Pixel 2 avec la prise en charge de Google Play. Fonctionnant sur le Pixel 2, j'obtiens un message d'erreur: "/ GooglePlayServicesUtil (4151): services Google Play obsolètes. Nécessite 13400000 mais trouvé 13280022". J'ai ensuite installé Pixel 2 API Q (dernière version) mais cette fois je n'ai pas pu exécuter l'application dans l'émulateur. Message: «Erreur de connexion au protocole de service: HttpException: connexion fermée avant la réception de l'en-tête complet». Je google et certains disent que vous devriez rétrograder. Je n'ai pas essayé ça.
@SGoldwin J'ai aussi l'API 28 du Nexus 5X et cela a fonctionné avec moi. en fait, je ne sais pas grand-chose sur le problème des émulateurs :(
Deux problèmes possibles lorsque je suis tombé sur ce problème.
Assurez-vous d'avoir activé le "SDK Maps pour iOS" dans votre console API " https://console.cloud.google.com/google/maps-apis/ ......."
Vous ne devez pas publier de liens comme réponse. Pourriez-vous mettre à jour votre réponse et indiquer les étapes à suivre pour résoudre le problème.
Vous n'avez probablement pas activé le service Google Map et le SDK Map pour Android et IOS dans Google Cloud Console ... Essayez ce lien https://console.cloud.google.com/google/maps-apis/overview
allez dans la console google cloud et activez votre APIKey et cela fonctionnera, j'ai rencontré le même problème et l'application (que j'ai installée sur un appareil physique Android mais cela n'a pas fonctionné et apparaît comme une page vierge avec le logo de google dans le coin inférieur gauche,
après cela, j'ai réalisé que je devais activer l'APIKey pas jsut le générer et l'inclure dans mon application et quand j'ai fait cela, l'application fonctionnait bien et les cartes apparaissent et le problème est résolu
Eh bien, lorsque vous ajoutez sa clé API dans le fichier AndroidManifest.xml
Ajouter
<meta-data android:name="com.google.android.geo.API_KEY" android:value="YOUR_API_KEY"/>
entre </activity>
et </application>
.
flutter clean
dans le terminal.J'ai rencontré le même problème même lorsque mes API sont activées, j'obtiens un écran bleu vide. La commande flutter clean a vraiment sauvé la journée: D
J'ai eu le même problème sur mon téléphone de débogage. Il s'avère que le connecter à Internet aide;) (je n'ai pas remarqué que le Wi-Fi était désactivé)
Essayez d'exécuter l'application sur n'importe quel mobile au lieu de l'émulateur. J'étais confronté au même problème, mais cela fonctionne pour moi lorsque j'ai essayé d'exécuter l'application sur mobile. Sinon, vous devez vérifier dans la console GCP si vous avez activé le SDK Maps pour IOS ou non.
Je souffrais également de cette erreur ou de cet écran vide.Ainsi, la solution que j'ai obtenue est d'activer le SDK Maps pour Android ou IOS.Sur Google Cloud Platform.Après avoir activé le SDK, votre application affichera sûrement la carte dans une minute.
Après avoir créé une API, vous devez activer le SDK Android et le SDK IOS pour votre projet. Après cela, accédez aux restrictions d'API et sélectionnez ces deux éléments. Veuillez voir les images suivantes:
Et vous avez terminé! Tout ce que vous avez à faire pour le moment est de copier la clé API et de l'ajouter dans votre fichier AndroidManifest. Gardez également à l'esprit que vous n'avez pas besoin d'ajouter un compte de facturation pour que cela fonctionne. J'espère que cela fonctionne pour toi!
Quelle est la différence entre votre deuxième et votre troisième image?
Flutter 1.7.5+, Dart 2.8.5+
J'avais tout essayé, mais je ne travaillais toujours pas sur iOS, j'avais vérifié les autorisations, etc. tout allait bien, mais apparemment ce problème était lié à la vue Web "io.flutter.embedded_views_preview". Après avoir défini ce fichier info.plist, a fonctionné.
<key>io.flutter.embedded_views_preview</key><true/>
J'ai suivi les instructions de la page du plugin Flutter pour commencer à travailler avec des cartes: https://codelabs.developers.google.com/codelabs/google-maps-in-flutter/#1
https://pub.dev/packages/google_maps_flutter#usage
Le problème auquel j'étais confronté: (s'applique uniquement aux personnes qui ont restreint la clé API pour accepter les demandes d'identifiants de bundle spécifiques dans iOS)
J'ai eu le problème où j'avais une boîte grise vierge à la place de la carte.
Le problème s'est avéré être que j'avais restreint ma clé API pour restreindre les demandes: "accepter les demandes d'une application iOS avec l'un de ces identifiants de bundle."
J'avais changé l'identifiant du bundle. Tout ce que j'avais à faire était d'ajouter l'identifiant du bundle à la liste d'identifiants autorisés. et les cartes sont apparues.
vous pouvez trouver l'identifiant du bundle ios en effectuant une recherche globale dans le code de votre application pour "PRODUCT_BUNDLE_IDENTIFIER =".
vous pouvez accéder à la page de modification des touches API en:
assurez-vous que votre clé ici est la même que la clé API utilisée dans l'affichage de la carte: ou ajoutez cette balise meta à votre fichier manifeste avec la bonne API_KEY
<meta-data android:name="com.google.android.geo.API_KEY" android:value="API_KEY"/>
I get white screen on my emulator with no map
- s'agit-il uniquement d'une carte sur tout l'écran ou votre application se bloque-t-elle? Et vous devrez ajouter une option de paiement avant d'utiliser l'API Google Maps, une seule demande par jour est gratuite.J'ai deux boutons flottants avec. ils apparaissent mais seule la section avec google map ne montre rien.
Il vaut mieux publier du code ou des traces de pile.
Je n'ai pas écrit de code car il est identique à ce tutoriel " medium.com/flutter-io/google-maps-and-flutter-cfb330f9a245 "
Veuillez montrer votre code, il doit y avoir une erreur que vous avez faite lors du codage. Vérifiez à nouveau votre clé API, vérifiez que votre émulateur dispose d'une connexion Internet.
J'ai essayé la même chose il y a 2 jours et montre toujours l'écran blanc dans google map, mais cela fonctionne bien pour Java Script car il montre la carte dans le navigateur que j'ai vérifié avec l'exemple de base. J'ai vérifié que les API Android et Ios sont activées. mais toujours le même écran blanc à la place de la carte
je reçois la même chose. @TuttaFM avez-vous résolu le problème?
@mmc, dans ce tutoriel non, même pas avec l'exemple dans le fichier read me dans le plugin. Je trouve un autre moyen pour la carte et cela fonctionne bien pour moi. Je le posterai ici comme réponse temporaire pour les autres.
Ne travaille pas pour moi. Écran blanc / gris Sam. J'ai l'icône de position et si j'utilise le code Fatimas ci-dessous, j'obtiens un marqueur à l'écran. J'ai essayé l'émulateur iOS et Android et aussi sur mon appareil iOS. Même résultat. J'ai essayé avec le code suggéré par la documentation ( pub.dev/packages/google_maps_flutter#-installing-tab- ) et même résultat. Des suggestions pour résoudre ce problème?