Add following dependency or plugins in pubspec.yaml file:
google_maps_flutter: ^2.0.3
Create an API for Google Map from Google Developers Console.
Create a new Project or you can also used existing project API. So i just created a new project that name is Goole Map Integration like below:
After creating prject you need to select your project like below:
After selecting your project go to Enable API and Services like below:
After this you need to select Map Sdk for Android or IOS i am selecting Android and enable API like below:
After this you need to select credentials to create an API like below:
After this you need to select API key like below:
After creating the API Key you need to copy like below:
You need to paste that API key inside Androidmanifest file like below:
After doing all above steps, now you can write below code.
import 'package:flutter/material.dart'; import 'package:google_maps_flutter/google_maps_flutter.dart'; void main() { runApp(MaterialApp( home: MyGoogle(), title: "Google Map Tutorial", )); } class MyGoogle extends StatefulWidget { @override _MyGoogleState createState() => _MyGoogleState(); } class _MyGoogleState extends State<MyGoogle> { var maptype = MapType.normal; Set<Marker> _markers = {}; @override Widget build(BuildContext context) { return Scaffold( appBar: AppBar( title: Text("Google Map Tutorial"), ), body: Container( child: Stack( children: [ GoogleMap( initialCameraPosition: CameraPosition( target: LatLng(28.7041, 77.1025), zoom: 18, ), mapType: maptype, onTap: (currentTapLocation) => print( "The Current Position is : ${[ currentTapLocation.latitude, currentTapLocation.longitude ]}"), markers: _markers, onMapCreated: (controller) { setState(() { _markers.add( Marker( markerId: MarkerId("First Id"), position: LatLng(28.7041, 77.1025), infoWindow: InfoWindow( title: "Institute", snippet: "Education Center", ), ), ); }); }, ), Align( alignment: Alignment.topRight, child: Card( margin: EdgeInsets.all(5), elevation: 10, color: Colors.black45, child: ButtonBar( mainAxisSize: MainAxisSize.min, children: [ IconButton( onPressed: () { setState(() { maptype = MapType.satellite; }); }, icon: Icon( Icons.map, color: Colors.white, ), ), IconButton( onPressed: () { setState(() { maptype = MapType.terrain; }); }, icon: Icon( Icons.map_outlined, color: Colors.white, ), ), IconButton( onPressed: () { setState(() { maptype = MapType.hybrid; }); }, icon: Icon( Icons.maps_ugc, color: Colors.white, ), ), ], ), ), ), ], ), ), ); } }
No comments:
Post a Comment