Search code examples
javaandroidgoogle-mapsmaps

How to activate Google Maps on android


I have an old java android project with simple using of google map for allocating some store locations . the map fragment stopped working on new android version showing blank page while working on older versions like android 9 or older ..

I tried to activate the Google Map API from Google Cloud it says that I need to purchase the service does it no longer available for free ? and if so is there any way of activating it with out baying the service? any help appreciated thanks ..


Solution

  • Google Maps Platform is now has a pay-as-you-go billing model which means that you are charged for how many requests/map loads you make. https://developers.google.com/maps/billing-and-pricing/billing

    You will need to set up billing: https://support.google.com/googleapi/answer/6158867?hl=en

    Once you've done that you can create or connect a project to the billing account: https://developers.google.com/maps/get-started#quickstart

    You can then create an API key using the steps in the link above.

    You will have $200 of maps monthly credits each and every month to use before you are charged: https://developers.google.com/maps/billing-and-pricing/billing#monthly-credit

    Please take a look at the pricing of the SKUs here: https://developers.google.com/maps/billing-and-pricing/pricing

    You can optimise your usage, set budget alerts or set daily caps on your APIs, check this optimization guide out: https://developers.google.com/maps/optimization-guide

    Don't forget to secure your API keys too: https://developers.google.com/maps/api-security-best-practices

    Android SDk map loads are free unless you are loading the Maps JavaScript API or using a MapID for styling the Map: https://developers.google.com/maps/documentation/android-sdk/usage-and-billing#dynamic-maps

    So, you can set daily quota limits so that you can't go over the $200 maps monthly credits and then you won't be charged for the usage, it will instead return errors.