Wprowadzenie

W tym samouczku dowiesz się, jak dodać mapę Google do aplikacji Flutter. Mapa zawiera znacznik, zwany też pinezką, wskazujący konkretną lokalizację.
Pobieranie kodu
Sklonuj lub pobierz repozytorium z przykładowymi aplikacjami na platformę Flutter. Przykładowy kod znajdziesz w katalogu google_maps.
Konfigurowanie projektu programistycznego
Zanim przejdziesz do tego tematu, wykonaj czynności opisane w przewodniku Konfigurowanie projektu Flutter.
1. Zaimportuj pakiet Map Google dla Flutter
-  Otwórz plik main.dartw wybranym środowisku IDE.
- Sprawdź, czy do pliku została dodana ta instrukcja importu:
import 'package:google_maps_flutter/google_maps_flutter.dart';
2. Dodawanie Map Google do aplikacji Flutter
W widżecie Scaffold dodaj widżet GoogleMap jako treść.
GoogleMap( initialCameraPosition: CameraPosition( target: _center, zoom: 11.0, ), markers: { const Marker( markerId: MarkerId('Sydney'), position: LatLng(-33.86, 151.20), ) }, )
- Opcja markerIddodaje etykietę do markera.
- Opcja positionokreśla, gdzie znacznik ma się pojawić na mapie.
3. Kompilowanie i uruchamianie aplikacji
Uruchom aplikację Flutter, korzystając z jednej z tych opcji:
- W IDE kliknij przycisk Run.
- W wierszu poleceń uruchom polecenie flutter run.
Powinna pojawić się mapa ze znacznikiem wyśrodkowanym na Sydney na wschodnim wybrzeżu Australii, podobna do obrazu na tej stronie.
Rozwiązywanie problemów
- Jeśli nie widzisz mapy, sprawdź, czy masz klucz interfejsu API i czy został on dodany do aplikacji.
- Jeśli do ograniczenia klucza interfejsu API używasz identyfikatora pakietu iOS, edytuj klucz, aby dodać identyfikator pakietu aplikacji: com.google.examples.map-with-marker.
- Upewnij się, że masz dobre połączenie Wi-Fi lub GPS.
- Użyj Narzędzi deweloperskich Fluttera, aby wyświetlać logi i debugować aplikację.
- Więcej informacji o uruchamianiu aplikacji Flutter.
4. Zrozumienie kodu
Ten kod znajdziesz na GitHub.
- Zaimportuj niezbędne pakiety i zainicjuj aplikację.
import 'package:flutter/material.dart'; import 'package:google_maps_flutter/google_maps_flutter.dart'; void main() => runApp(const MyApp()); class MyApp extends StatefulWidget { const MyApp({super.key}); @override State<MyApp> createState() => _MyAppState(); } 
- Utwórz mapę wyśrodkowaną na Sydney w Australii.
class _MyAppState extends State<MyApp> { late GoogleMapController mapController; final LatLng _center = const LatLng(-33.86, 151.20); void _onMapCreated(GoogleMapController controller) { mapController = controller; } 
- Dodaj widżety potrzebne do wyświetlania mapy w aplikacji.
@override Widget build(BuildContext context) { return MaterialApp( home: Scaffold( appBar: AppBar( title: const Text('Maps Sample App'), backgroundColor: Colors.green[700], ), body: GoogleMap( onMapCreated: _onMapCreated, initialCameraPosition: CameraPosition( target: _center, zoom: 11.0, ), // CameraPosition ), // GoogleMap ), // Scaffold ); // MaterialApp } } 
- Dodaj widżety znaczników, aby dodać widżet do aplikacji.
body: GoogleMap( onMapCreated: _onMapCreated, initialCameraPosition: CameraPosition( target: _center, zoom: 11.0, ), markers: { const Marker( markerId: const MarkerId("Sydney"), position: LatLng(-33.86, 151.20), ), // Marker }, // markers ), // GoogleMap ... 
- Dodaj do markera okno informacyjne.
const Marker( markerId: const MarkerId("Sydney"), position: LatLng(-33.86, 151.20), infoWindow: InfoWindow( title: "Sydney", snippet: "Capital of New South Wales", ), // InfoWindow ), //Marker ... 
Gratulacje! Masz aplikację Flutter, która wyświetla mapę Google ze znacznikiem wskazującym konkretną lokalizację i dodatkowymi informacjami w oknie informacyjnym. Wiesz już też, jak korzystać z pakietu Map Google dla Flutter.