The method 'placemarkFromCoordinates' isn't defined for the type 'Geolocator'

Viewed 2311

I am trying to get the users location in my flutter app by using placemark. I have imported all the necessary dependencies that are required to run the app but still i am getting error in geolocator placemark. I don't know what to do.

`import 'package:flutter/material.dart';

import 'package:flutter/widgets.dart';

import 'package:geolocator/geolocator.dart';

import 'package:google_maps_flutter/google_maps_flutter.dart';

import 'package:ft06/requests/google_maps_requests.dart';

class AppState with ChangeNotifier {

 static LatLng _initialPosition;

 LatLng _lastPosition = _initialPosition;

 bool locationServiceActive = true;

 final Set<Marker> _markers = {};

 final Set<Polyline> _polyLines = {};

 GoogleMapController _mapController;

 GoogleMapsServices _googleMapsServices = 

GoogleMapsServices();
 
TextEditingController locationController = 

TextEditingController();



 TextEditingController destinationController = 
TextEditingController();

 LatLng get initialPosition => _initialPosition;

 LatLng get lastPosition => _lastPosition;

 GoogleMapsServices get googleMapsServices => 
_googleMapsServices;

 GoogleMapController get mapController => 
_mapController;

 Set<Marker> get markers => _markers;

 Set<Polyline> get polyLines => _polyLines;



 AppState() {

   _getUserLocation();

   _loadingInitialPosition();

 }

// ! TO GET THE USERS LOCATION

 void _getUserLocation() async {

   print("GET USER METHOD RUNNING =========");

   Position position = await Geolocator()

       .getCurrentPosition(desiredAccuracy:LocationAccuracy.high);

   List<Placemark> placemark = await Geolocator()

       .placemarkFromCoordinates(position.latitude, 
position.longitude);

   _initialPosition = LatLng(position.latitude, 
position.longitude);

   print("the latitude is: ${position.longitude} 
and th longitude is: ${position.longitude} ");

   print("initial position is : 




${_initialPosition.toString()}");locationController.




text = placemark[0].name;




   notifyListeners();




 }

actual error output terminal

please help!!!

1 Answers

Starting from version 6.0.0 Placemark has been removed from geolocator and moved to geocoding.

After importing geocoding into your file use

List<Placemark> placemarks = await placemarkFromCoordinates(position.latitude, position.longitude);
Related