In order to find the current location of our user, you have created an async method called findUserLocation. This method leverages the device's GPS to find the latitude and longitude of the user's current location (if available), and returns it to the caller. This method is then used to set the future property of the FutureBuilder object in the user interface.
Before trying to retrieve the user's location, there are two important steps. You should always check whether location services are activated and that the user has granted permission to retrieve their location. In the example in this recipe, you have used the following commands:
PermissionStatus hasPermission = await location.hasPermission();
Later, you added the following:
bool active = await location.serviceEnabled();
The hasPermission method returns a PermissionStatus value, which includes the state of the location permission. The serviceEnabled method returns a Boolean, which is true when...