You're all set!

To start developing, please head over to our developer documentation.

Activate the Google Maps Android API

To get you started we'll guide you through the Google Developers Console to do a few things first:

  1. Create or choose a project
  2. Activate the Google Maps Android API
  3. Create appropriate keys
Continue

Get API Key

To use the Google Maps Android API, you must register your app project on the Google API Console and get a Google API key which you can add to your app.

Quick guide to getting a key

Step 1. Get an API key from the Google API Console

Click the button below, which guides you through the process of registering a project in the Google API Console, activates the Google Maps Android API automatically, and generates a generic, unrestricted API key.

Get a Key

Notes:

  • Tip: During development and testing, you can register a project for testing purposes in the Google API Console and use a generic, unrestricted API key. When you are ready to move your app into production, register a separate project for production, create an Android-restricted API key, and add the key to your application.
  • Premium Plan customers: For production-ready apps, you must use an Android-restricted API key set up in the Google Maps APIs Premium Plan project created for you when you purchased the Premium Plan.
  • For more information, see the detailed guides below for Standard Plan and Premium Plan customers.

Step 2. Add the API key to your application

Follow the steps below to include the API key in your application's manifest, contained in the file AndroidManifest.xml.

  1. In AndroidManifest.xml, add the following element as a child of the <application> element, by inserting it just before the closing </application> tag:
        <meta-data
            android:name="com.google.android.geo.API_KEY"
            android:value="YOUR_API_KEY"/>
        

    Substitute your API key for YOUR_API_KEY in the value attribute. This element sets the key com.google.android.geo.API_KEY to the value of your API key.

  2. Save AndroidManifest.xml and re-build your application.

Note: As shown above, com.google.android.geo.API_KEY is the recommended metadata name for the API key. A key with this name can be used to authenticate to multiple Google Maps-based APIs on the Android platform, including the Google Maps Android API. For backwards compatibility, the API also supports the name com.google.android.maps.v2.API_KEY. This legacy name allows authentication to the Android Maps API v2 only. An application can specify only one of the API key metadata names. If both are specified, the API throws an exception.

That's it. If you followed the above steps successfully, you've finished. If you ran into a problem, read the detailed instructions below for the standard API and the Premium Plan.

Detailed guides to getting an API key

Detailed guide for users of the standard Google Maps Android API

Follow these steps to get an API key:

  1. Go to the Google API Console.
  2. Create or select a project.
  3. Click Continue to enable the Google Maps Android API.
  4. On the Credentials page, get an API key.
    Note: If you have an existing API key with Android restrictions, you may use that key.
  5. From the dialog displaying the API key, select Restrict key to set an Android restriction on the API key.
  6. In the Restrictions section, select Android apps, then enter your app's SHA-1 fingerprint and package name. For example:
    BB:0D:AC:74:D3:21:E1:43:67:71:9B:62:91:AF:A1:66:6E:44:5D:75
    com.example.android.mapexample
  7. See more about API key restrictions below.
  8. Click Save.

Your new Android-restricted API key appears in the list of API keys for your project. An API key is a string of characters, something like this:

AIzaSyBdVl-cTICSwYKrZ95SuvNw7dbMuDt1KG0

Detailed guide for users of the Google Maps APIs Premium Plan license

Follow these steps to get an API key:

  1. Go to the Google API Console.
  2. From the Project drop-down menu, select the project created for you when you purchased the Google Maps APIs Premium Plan. The project name starts with Google Maps APIs for Business or Google Maps for Work or Google Maps.
  3. Click Continue.
  4. On the Credentials page, get an API key.
  5. From the dialog displaying the API key, select Restrict key to set an Android restriction on the API key.
  6. In the Restrictions section, select Android apps, then enter your app's SHA-1 fingerprint and package name. For example:
    BB:0D:AC:74:D3:21:E1:43:67:71:9B:62:91:AF:A1:66:6E:44:5D:75
    com.example.android.mapexample
    See more about API key restrictions below.
  7. Click Save.

Your new Android-restricted API key appears in the list of API keys for your project. An API key is a string of characters, something like this:

AIzaSyBdVl-cTICSwYKrZ95SuvNw7dbMuDt1KG0

More about the Google API Console

You can also look up an existing key in the Google API Console.

For more information on using the Google API Console, see API Console Help.

More about API key restrictions

Google Maps APIs are available for Android or iOS apps, Web browsers, and via HTTP web services. APIs on any platform can use a generic (unrestricted) API key. You can optionally add a restriction. For Android apps, you restrict the key to your app's SHA-1 fingerprint and package name. Restricted keys work only on platforms that support that type of restriction.

To add Android restrictions to an existing, generic API key, do the following:

  1. Go to the Credentials page of the Google API Console.
  2. Select the project that contains the API key you want to edit.
  3. On the Credentials page, from the list of API keys, select the name of the API key to edit the details of the key.
  4. In the Key restriction section of the page, select “Android apps” and add your package name and SHA-1 signing-certificate fingerprint, then click Save.

Where to get your app's SHA-1 fingerprint

The Android API key restriction is based on a short form of your app's digital certificate, known as its SHA-1 fingerprint.

Getting the certification information from Android Studio

If you follow the getting started guide for the Google Maps Android API, Android Studio creates a handy google_maps_api.xml file with your app's credentials.

Choose one of the following ways to get your API key from Android Studio:

  • The fast, easy way: Use the link provided in the google_maps_api.xml file that Android Studio created for you:
    1. Copy the link provided in the google_maps_api.xml file and paste it into your browser. The link takes you to the Google API Console and supplies the required information to the Google API Console via URL parameters, thus reducing the manual input required from you.
    2. Follow the instructions to create a new project on the Google API Console or select an existing project.
    3. Create an Android-restricted API key for your project.
    4. Copy the resulting API key, go back to Android Studio, and paste the API key into the <string> element in the google_maps_api.xml file.
  • A slightly less fast way: Use the credentials provided in the google_maps_api.xml file that Android Studio created for you:
    1. Copy the credentials provided in the google_maps_api.xml file.
    2. Go to the Google API Console in your browser.
    3. Use the copied credentials to add your app to an existing API key or to create a new API key.

Getting the certificate information yourself

If you didn't follow the getting started guide when creating your app, you need to get the SHA-1 fingerprint for your certificate yourself. First ensure that you are using the right certificate. You may have two certificates:

  • A debug certificate: The Android SDK tools generate this certificate automatically when you do a debug build. Only use this certificate with apps that you're testing. Do not attempt to publish an app that's signed with a debug certificate. The debug certificate is described in more detail in Signing in Debug Mode in the Android Developer Documentation.
  • A release certificate: The Android SDK tools generate this certificate when you do a release build. You can also generate this certificate using the keytool program. Use this certificate when you are ready to release your app to the world.

Follow the steps below to display a certificate's SHA-1 fingerprint using the keytool program with the -v parameter. For more information about Keytool, see the Oracle documentation.

Debug certificate

Displaying the debug certificate fingerprint

  1. Locate your debug keystore file. The file name is debug.keystore, and is created the first time you build your project. By default, it is stored in the same directory as your Android Virtual Device (AVD) files:

    • macOS and Linux: ~/.android/
    • Windows Vista and Windows 7: C:\Users\your_user_name\.android\
  2. List the SHA-1 fingerprint:

    • For Linux or macOS, open a terminal window and enter the following:

      keytool -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android
    • For Windows Vista and Windows 7, run:

      keytool -list -v -keystore "%USERPROFILE%\.android\debug.keystore" -alias androiddebugkey -storepass android -keypass android

You should see output similar to this:

Alias name: androiddebugkey
Creation date: Jan 01, 2013
Entry type: PrivateKeyEntry
Certificate chain length: 1
Certificate[1]:
Owner: CN=Android Debug, O=Android, C=US
Issuer: CN=Android Debug, O=Android, C=US
Serial number: 4aa9b300
Valid from: Mon Jan 01 08:04:04 UTC 2013 until: Mon Jan 01 18:04:04 PST 2033
Certificate fingerprints:
     MD5:  AE:9F:95:D0:A6:86:89:BC:A8:70:BA:34:FF:6A:AC:F9
     SHA1: BB:0D:AC:74:D3:21:E1:43:07:71:9B:62:90:AF:A1:66:6E:44:5D:75
     Signature algorithm name: SHA1withRSA
     Version: 3
Release certificate

Displaying the release certificate fingerprint

  1. Locate your release certificate keystore file. There is no default location or name for the release keystore. If you don't specify one when you build your app for release, the build will leave your .apk unsigned, and you'll have to sign it before you can publish it. For the release certificate, you also need the certificate's alias and the passwords for the keystore and the certificate. You can list the aliases for all the keys in a keystore by entering:

    keytool -list -keystore your_keystore_name

    Replace your_keystore_name with the fully-qualified path and name of the keystore, including the .keystore extension. You'll be prompted for the keystore's password. Then keytool displays all the aliases in the keystore.

  2. Enter the following at a terminal or command prompt:

    keytool -list -v -keystore your_keystore_name -alias your_alias_name

    Replace your_keystore_name with the fully-qualified path and name of the keystore, including the .keystore extension. Replace your_alias_name with the alias that you assigned to the certificate when you created it.

You should see output similar to this:

Alias name: <alias_name>
Creation date: Feb 02, 2013
Entry type: PrivateKeyEntry
Certificate chain length: 1
Certificate[1]:
Owner: CN=Android Debug, O=Android, C=US
Issuer: CN=Android Debug, O=Android, C=US
Serial number: 4cc9b300
Valid from: Mon Feb 02 08:01:04 UTC 2013 until: Mon Feb 02 18:05:04 PST 2033
Certificate fingerprints:
    MD5:  AE:9F:95:D0:A6:86:89:BC:A8:70:BA:34:FF:6B:AC:F9
    SHA1: BB:0D:AC:74:D3:21:E1:43:67:71:9B:62:90:AF:A1:66:6E:44:5D:75
    Signature algorithm name: SHA1withRSA
    Version: 3

The line that begins with SHA1 contains the certificate's SHA-1 fingerprint. The fingerprint is the sequence of 20 two-digit hexadecimal numbers separated by colons.

Refer to the Android guide to signing your applications for further information about digital certificates.

Send feedback about...

Google Maps Android API
Google Maps Android API
Need help? Visit our support page.