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:
- Goto https://developers.google.com/maps/documentation/android-api/signup and click on “GET STARTED” button as shown in the figure:
- Now select the Map checkbox and click on the Continue button as shown below:
- 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.
- Skip the Billing Process
- 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
- Open Command Prompt and go to your Java bin Folder
- Go to https://console.developers.google.com/apis/credentials
- 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.
- In Application Restrictions, select Android apps
- Click on Add package name and fingerprint
- Enter your app’s package name and the fingerprint which was found in above steps and click Save button.
-
Insert the following in Project ->app ->src ->build.gradle ->dependencies
compile 'com.google.android.gms:play-services:11.6.0'
-
Add the following declaration within the element of AndroidManifest.xml
<
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_rightfilter_none -
Add the following permissions in Manifest.xml
<
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_rightfilter_none - Specify following specifications in Manifest.xml
<
uses-feature
android:glEsVersion
=
"0x00020000"
android:required
=
"true"
/>
chevron_rightfilter_none -
Add the following fragment code in ActivityMain.xml for adding Google map to your activity.
<
fragment
android:id
=
"@+id/map"
class
=
"com.google.android.gms.maps.SupportMapFragment"
android:layout_width
=
"match_parent"
android:layout_height
=
"match_parent"
/>
chevron_rightfilter_none -
Add the following code in MainActivity.java
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_rightfilter_none -
Run the code.
Attention reader! Don’t stop learning now. Get hold of all the important Java Foundation and Collections concepts with the Fundamentals of Java and Java Collections Course at a student-friendly price and become industry ready.