Google Place Picker Plugin for Xamarin Projects

It has been long since I have updated my blog, here is a new post for Xamarin community :)

You might have come across different needs for selecting location in your apps, and might have resorted of developing Custom Renderer in case of Xamarin.Forms app.

I have developed an open source plugin for Xamarin to make this process easier. If you are interested in helping me out to extend the plugin, you can start contributing here: https://github.com/muhaym/crossplacepicker

One line of code, you will get Google Place Picker in your application.

Let’s get into step:

Step 1: Install Nuget to all projects in solutions (ie. in Shared PCL and Platform Specific projects)

https://www.nuget.org/packages/Fantacode.Plugin.CrossPlacePicker/

Step 2: Sign up for Google Maps Key at https://developers.google.com/places/android-api/signup

Step 3:

Follow Platform setup guide from

https://github.com/muhaym/crossplacepicker#important-permission-and-setup-information

Step 4:

Wherever you require place picker, use

   try
          {
              var result = await CrossPlacePicker.Current.Display();
              if (result != null)
              {
                  await DisplayAlert(result.Name, "Latitude: " + result.Coordinates.Latitude + "\nLongitude: " + result.Coordinates.Longitude, "OK"); // Xamarin Forms 
              }
          }
          catch (Exception ex)
          {
              await DisplayAlert("Error", ex.ToString(), "Oops");
          }

If you want to set initial map screen to specific bounds, use

      try
      {
          var southWest = new Coordinates(85, -180);
          var northEast = new Coordinates(-85, 180);
          var CoordinateBounds = new CoordinateBounds(southWest, northEast);
          var result = await CrossPlacePicker.Current.Display(CoordinateBounds);
      }
      catch (Exception ex)
      {
          await DisplayAlert("Error", ex.ToString(), "Oops");
      }

If you face any issues, comment here, or in issues tracker at github https://github.com/muhaym/crossplacepicker/issues

Sample for this plugin used in and Xamarin.Forms project can be found here

https://github.com/muhaym/CrossPlacePicker/tree/master/samples/PlacePickerForms