Google Maps in Android

Maps are of great use and it increases the productivity of an app. Google Maps API allows Android developers to integrate Google Maps in their app.

Below is the step-by-step process to integrate Google Maps into Android applications:

  1. Goto https://developers.google.com/maps/documentation/android-api/signup and click on “GET STARTED” button as shown in the figure:
  2. Now select the Map checkbox and click on the Continue button as shown below:
  3. Select a project in which you want to enable Google Map API, and click on Next. A new key will be generated for the chosen project.
  4. Skip the Billing Process
  5. For integrating Google Map API, your machine’s SHA1 certificate is needed. So to find SHA1 certificate, follow below steps:
    • Open Command Prompt and go to your Java bin Folder
      cd C:\Program Files\Java\jdk1.8.0_91\bin
    • Give the following CMD command for getting Certificate Footprints:

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

  6. Go to https://console.developers.google.com/apis/credentials
  7. In the API keys section, click on Pencil button made on the right of API key that you want to select, for attaching your app with.
  8. In Application Restrictions, select Android apps
  9. Click on Add package name and fingerprint
  10. Enter your app’s package name and the fingerprint which was found in above steps and click Save button.
  11. Insert the following in Project ->app ->src ->build.gradle ->dependencies

    compile 'com.google.android.gms:play-services:11.6.0'
  12. Add the following declaration within the element of AndroidManifest.xml

    filter_none

    edit
    close

    play_arrow

    link
    brightness_4
    code

    <meta-data
        android:name="com.google.android.gms.version"
        android:value="@integer/google_play_services_version" />
    <meta-data
        android:name="com.google.android.maps.v2.API_KEY"
        android:value="ENTER API_KEY GENERATED BY YOU IN ABOVE STEPS" />

    chevron_right

    
    

  13. Add the following permissions in Manifest.xml

    filter_none

    edit
    close

    play_arrow

    link
    brightness_4
    code

    <uses-permission
            android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    <uses-permission
            android:name="android.permission.INTERNET" />
    <uses-permission
            android:name="android.permission.ACCESS_NETWORK_STATE" />

    chevron_right

    
    

  14. Specify following specifications in Manifest.xml
    filter_none

    edit
    close

    play_arrow

    link
    brightness_4
    code

    <uses-feature
            android:glEsVersion="0x00020000"
            android:required="true"/>

    chevron_right

    
    

  15. Add the following fragment code in ActivityMain.xml for adding Google map to your activity.

    filter_none

    edit
    close

    play_arrow

    link
    brightness_4
    code

    <fragment
        android:id="@+id/map"
        class="com.google.android.gms.maps.SupportMapFragment"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        />

    chevron_right

    
    

  16. Add the following code in MainActivity.java

    filter_none

    edit
    close

    play_arrow

    link
    brightness_4
    code

    public class MapsMarkerActivity extends AppCompatActivity implements OnMapReadyCallback {
        @Override
        protected void onCreate(Bundle savedInstanceState)
        {
            super.onCreate(savedInstanceState);
      
            // Retrieve the content view that renders the map.
            setContentView(R.layout.ActivityMain);
      
            // Get the SupportMapFragment and request notification
            // when the map is ready to be used.
            SupportMapFragment mapFragment = (SupportMapFragment)
                                                 getSupportFragmentManager()
                                                     .findFragmentById(R.id.map);
            mapFragment.getMapAsync(this);
        }
        @Override
        public void onMapReady(GoogleMap googleMap)
        {
            // Add a marker in Sydney, Australia,
            // and move the map's camera to the same location.
            LatLng myPos = new LatLng(Location.getLatitude(), Location.getLongitude());
            googleMap.moveCamera(CameraUpdateFactory.newLatLng(myPos));
        }
    }

    chevron_right

    
    

  17. Run the code.



    My Personal Notes arrow_drop_up

    Check out this Author's contributed articles.

    If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

    Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.




    Article Tags :
    Practice Tags :


    Be the First to upvote.


    Please write to us at contribute@geeksforgeeks.org to report any issue with the above content.