Autocomplete search with flutter_google_places doesn't work?

Issue

I’m developing my first more complex project, similar to the Uber app idea.

I follow the instructions in this question autocomplete with flutter

But when i try to search for addresses, nothing appears

Image 1

I’m using GetX for state management

Here’s my code,
in the view:

child: TextField(
                onTap: () async {
                  Prediction p = await PlacesAutocomplete.show(
                      context: Get.context,
                      apiKey: "my_apikey_is_here",
                      language: "pt",
                      components: [Component(Component.country, "br")],
                      mode: Mode.overlay);
                  controller.displayPrediction(p);
                },
                controller: _controllerDestino,
                decoration: InputDecoration(
                    icon: Container(
                      margin: EdgeInsets.only(left: 10),
                      child: Icon(
                        Icons.local_taxi,
                        color: Colors.black,
                      ),
                    ),
                    hintText: "Digite o destino",
                    border: InputBorder.none),
              )

Method and statements in the controller:

static const kGoogleApiKey = "my_ApiKey_isHere";
GoogleMapsPlaces places = GoogleMapsPlaces(apiKey: kGoogleApiKey);



Future<Null> displayPrediction(Prediction p) async {
if (p != null) {
  PlacesDetailsResponse detail =
      await places.getDetailsByPlaceId(p.placeId);

  var placeId = p.placeId;
  double lat = detail.result.geometry.location.lat;
  double lng = detail.result.geometry.location.lng;

  var address = await Geocoder.local.findAddressesFromQuery(p.description);
  print(lat);
  print(lng);
  update();
}

}

On Google Cloud Platform, 100% of my requests for Api Places result in errors, as shown in the image below

Google Cloud Platform

I saw some forums saying that I was obliged to link the project with a billing account, I did it, but the problem persisted

If someone can help me, thank you in advance

Solution

I found the problem.

My Api key was restricted to "Android Apps" only

However, access to an Api Places Google is done through HTTP requests.

Since my key was restricted, all my requests were resulting in "access denied".

It was necessary to change the restriction of my API key, as shown in the image below:

enter image description here

Remember, changing to "none" is not safe for your application, but in this example it is just a test application, so no problem.

Answered By – Lucas Baggio

Answer Checked By – Jay B. (FlutterFixes Admin)

Leave a Reply

Your email address will not be published. Required fields are marked *