In order to use MapQuest APIs and SDKs you will need a MapQuest key. We use this key to associate your requests to APIs with your account. You can find your existing keys or create a new one on the Applications page.
If you don't have a MapQuest Developer Account you can Sign Up Here.
We'll use Android Studio as our IDE in these examples. This install includes the Android SDK Manager required to download and run the Android SDK. Download Android Studio
Open Android Studio and go to File ‣ New ‣ Project or select "Start New Project". If this is your first time running Android Studio, you may be prompted to install the Android SDK - go ahead and follow the prompts to get the SDK installed.
On the following page, set the Application Name to My First MapQuest App. Set the Company Domain as desired and set the Project Location appropriately.
On the Target Android Devices page, leave everything at its default value and select Next.
On the following page, select the Empty Activity and leave the default settings on the Customize the Activity page. Select Finish to finalize the creation of your new app.
Install the MapQuest Android SDK using Gradle.
After creating your project, insert the following into your project's
build.gradle file:
allprojects {
repositories {
// mq maven repo
maven { url 'http://artifactory.cloud.mapquest.com/artifactory/et-android-binaries' }
}
}
Also, insert the following into your application's build.gradle file:
implementation('com.mapquest:mapping-android-sdk:2.0.5') // for Mapping SDK MapView
It may be necessary to perform a gradle clean build from the command line once
to resolve the MapQuest resources.
<com.mapquest.mapping.maps.MapView xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/mapquestMapView"
app:mapquest_app_key="YOUR_MAPQUEST_KEY_HERE"
/>
import android.app.Activity;
import android.os.Bundle;
import com.mapbox.mapboxsdk.maps.MapboxMap;
import com.mapbox.mapboxsdk.maps.OnMapReadyCallback;
import com.mapquest.mapping.MapQuest;
import com.mapquest.mapping.maps.MapView;
public class MainActivity extends Activity {
private MapView mMapView;
private MapboxMap mMapboxMap;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
MapQuest.start(getApplicationContext());
setContentView(R.layout.activity_main);
mMapView = (MapView) findViewById(R.id.mapquestMapView);
mMapView.onCreate(savedInstanceState);
mMapView.getMapAsync(new OnMapReadyCallback() {
@Override
public void onMapReady(MapboxMap mapboxMap) {
mMapboxMap = mapboxMap;
mMapView.setStreetMode();
}
});
}
@Override
public void onResume()
{ super.onResume(); mMapView.onResume(); }
@Override
public void onPause()
{ super.onPause(); mMapView.onPause(); }
@Override
protected void onDestroy()
{ super.onDestroy(); mMapView.onDestroy(); }
@Override
protected void onSaveInstanceState(Bundle outState)
{ super.onSaveInstanceState(outState); mMapView.onSaveInstanceState(outState); }
}
import android.app.Activity;
import android.os.Bundle;
import com.mapbox.mapboxsdk.maps.MapboxMap;
import com.mapbox.mapboxsdk.maps.OnMapReadyCallback;
import com.mapquest.mapping.MapQuest;
import com.mapquest.mapping.maps.MapView;
public class MainActivity extends Activity {
private MapView mMapView;
private MapboxMap mMapboxMap;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
MapQuest.start(getApplicationContext());
setContentView(R.layout.activity_main);
mMapView = (MapView) findViewById(R.id.mapquestMapView);
mMapView.onCreate(savedInstanceState);
mMapView.getMapAsync(new OnMapReadyCallback() {
@Override
public void onMapReady(MapboxMap mapboxMap) {
mMapboxMap = mapboxMap;
mMapView.setSatelliteMode();
}
});
}
@Override
public void onResume()
{ super.onResume(); mMapView.onResume(); }
@Override
public void onPause()
{ super.onPause(); mMapView.onPause(); }
@Override
protected void onDestroy()
{ super.onDestroy(); mMapView.onDestroy(); }
@Override
protected void onSaveInstanceState(Bundle outState)
{ super.onSaveInstanceState(outState); mMapView.onSaveInstanceState(outState); }
}
import android.app.Activity;
import android.os.Bundle;
import com.mapbox.mapboxsdk.camera.CameraUpdateFactory;
import com.mapbox.mapboxsdk.geometry.LatLng;
import com.mapbox.mapboxsdk.maps.MapboxMap;
import com.mapbox.mapboxsdk.maps.OnMapReadyCallback;
import com.mapquest.mapping.MapQuest;
import com.mapquest.mapping.maps.MapView;
public class MainActivity extends Activity {
private final LatLng MAPQUEST_HEADQUARTERS_LOCATION = new LatLng(39.750307, -104.999472);
private MapView mMapView;
private MapboxMap mMapboxMap;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
MapQuest.start(getApplicationContext());
setContentView(R.layout.activity_main);
mMapView = (MapView) findViewById(R.id.mapquestMapView);
mMapView.onCreate(savedInstanceState);
mMapView.getMapAsync(new OnMapReadyCallback() {
@Override
public void onMapReady(MapboxMap mapboxMap) {
mMapboxMap = mapboxMap;
mMapView.setStreetMode();
mMapboxMap.moveCamera(CameraUpdateFactory.newLatLngZoom(MAPQUEST_HEADQUARTERS_LOCATION, 11));
}
});
}
@Override
public void onResume()
{ super.onResume(); mMapView.onResume(); }
@Override
public void onPause()
{ super.onPause(); mMapView.onPause(); }
@Override
protected void onDestroy()
{ super.onDestroy(); mMapView.onDestroy(); }
@Override
protected void onSaveInstanceState(Bundle outState)
{ super.onSaveInstanceState(outState); mMapView.onSaveInstanceState(outState); }
}
import android.app.Activity;
import android.os.Bundle;
import com.mapbox.mapboxsdk.annotations.MarkerOptions;
import com.mapbox.mapboxsdk.camera.CameraUpdateFactory;
import com.mapbox.mapboxsdk.geometry.LatLng;
import com.mapbox.mapboxsdk.maps.MapboxMap;
import com.mapbox.mapboxsdk.maps.OnMapReadyCallback;
import com.mapquest.mapping.MapQuest;
import com.mapquest.mapping.maps.MapView;
public class MainActivity extends Activity {
private final LatLng MAPQUEST_HEADQUARTERS_LOCATION = new LatLng(39.750307, -104.999472);
private MapView mMapView;
private MapboxMap mMapboxMap;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
MapQuest.start(getApplicationContext());
setContentView(R.layout.activity_main);
mMapView = (MapView) findViewById(R.id.mapquestMapView);
mMapView.onCreate(savedInstanceState);
mMapView.getMapAsync(new OnMapReadyCallback() {
@Override
public void onMapReady(MapboxMap mapboxMap) {
mMapboxMap = mapboxMap;
mMapView.setStreetMode();
mMapboxMap.moveCamera(CameraUpdateFactory.newLatLngZoom(MAPQUEST_HEADQUARTERS_LOCATION, 12));
addMarker(mapboxMap);
}
});
}
private void addMarker(MapboxMap mapboxMap) {
MarkerOptions markerOptions = new MarkerOptions();
markerOptions.position(MAPQUEST_HEADQUARTERS_LOCATION);
markerOptions.title("MapQuest");
markerOptions.snippet("Welcome to Denver!");
mapboxMap.addMarker(markerOptions);
}
@Override
public void onResume()
{ super.onResume(); mMapView.onResume(); }
@Override
public void onPause()
{ super.onPause(); mMapView.onPause(); }
@Override
protected void onDestroy()
{ super.onDestroy(); mMapView.onDestroy(); }
@Override
protected void onSaveInstanceState(Bundle outState)
{ super.onSaveInstanceState(outState); mMapView.onSaveInstanceState(outState); }
}
import android.app.Activity;
import android.os.Bundle;
import com.mapbox.mapboxsdk.annotations.MarkerOptions;
import com.mapbox.mapboxsdk.camera.CameraUpdateFactory;
import com.mapbox.mapboxsdk.geometry.LatLng;
import com.mapbox.mapboxsdk.maps.MapboxMap;
import com.mapbox.mapboxsdk.maps.OnMapReadyCallback;
import com.mapbox.mapboxsdk.annotations.PolylineOptions;
import com.mapquest.mapping.MapQuest;
import com.mapquest.mapping.maps.MapView;
public class MainActivity extends Activity {
private final LatLng CAMERA_LOC = new LatLng(39.745391, -105.00653);
private MapView mMapView;
private MapboxMap mMapboxMap;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
MapQuest.start(getApplicationContext());
setContentView(R.layout.activity_main);
mMapView = (MapView) findViewById(R.id.mapquestMapView);
mMapView.onCreate(savedInstanceState);
mMapView.getMapAsync(new OnMapReadyCallback() {
@Override
public void onMapReady(MapboxMap mapboxMap) {
mMapboxMap = mapboxMap;
mMapView.setStreetMode();
mMapboxMap.moveCamera(CameraUpdateFactory.newLatLngZoom(CAMERA_LOC, 13));
setPoyline(mapboxMap);
}
});
}
private void setPoyline(MapboxMap mapboxMap) {
List<LatLng> coordinates = new ArrayList<>();
coordinates.add(new LatLng(39.74335,-105.01234));
coordinates.add(new LatLng(39.74667,-105.01135));
coordinates.add(new LatLng(39.7468,-105.00709));
coordinates.add(new LatLng(39.74391,-105.00794));
coordinates.add(new LatLng(39.7425,-105.0047));
coordinates.add(new LatLng(39.74634,-105.00478));
coordinates.add(new LatLng(39.74734,-104.99984));
PolylineOptions polyline = new PolylineOptions();
polyline.addAll(coordinates);
polyline.width(3);
polyline.color(Color.BLUE);
mapboxMap.addPolyline(polyline);
}
@Override
public void onResume()
{ super.onResume(); mMapView.onResume(); }
@Override
public void onPause()
{ super.onPause(); mMapView.onPause(); }
@Override
protected void onDestroy()
{ super.onDestroy(); mMapView.onDestroy(); }
@Override
protected void onSaveInstanceState(Bundle outState)
{ super.onSaveInstanceState(outState); mMapView.onSaveInstanceState(outState); }
}
import android.app.Activity;
import android.os.Bundle;
import com.mapbox.mapboxsdk.annotations.MarkerOptions;
import com.mapbox.mapboxsdk.camera.CameraUpdateFactory;
import com.mapbox.mapboxsdk.geometry.LatLng;
import com.mapbox.mapboxsdk.maps.MapboxMap;
import com.mapbox.mapboxsdk.maps.OnMapReadyCallback;
import com.mapbox.mapboxsdk.annotations.PolygonOptions;
import com.mapquest.mapping.MapQuest;
import com.mapquest.mapping.maps.MapView;
public class MainActivity extends Activity {
private final LatLng CAMERA_LOC = new LatLng(39.743943, -105.020089);
private MapView mMapView;
private MapboxMap mMapboxMap;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
MapQuest.start(getApplicationContext());
setContentView(R.layout.activity_main);
mMapView = (MapView) findViewById(R.id.mapquestMapView);
mMapView.onCreate(savedInstanceState);
mMapView.getMapAsync(new OnMapReadyCallback() {
@Override
public void onMapReady(MapboxMap mapboxMap) {
mMapboxMap = mapboxMap;
mMapView.setStreetMode();
mMapboxMap.moveCamera(CameraUpdateFactory.newLatLngZoom(CAMERA_LOC, 15));
setPoygon(mMapboxMap);
}
});
}
private void setPoygon(MapboxMap mapboxMap) {
List<LatLng> coordinates = new ArrayList<>();
coordinates.add(new LatLng(39.744465080845458,-105.02038957961648));
coordinates.add(new LatLng(39.744460864711129,-105.01981090977684));
coordinates.add(new LatLng(39.744379574636383,-105.01970518778262));
coordinates.add(new LatLng(39.743502042120781,-105.01970874744497));
coordinates.add(new LatLng(39.743419794549339,-105.01977839958302));
coordinates.add(new LatLng(39.74341214360723,-105.02038412442006));
coordinates.add(new LatLng(39.74349726029007,-105.02049233399056));
coordinates.add(new LatLng(39.744393745651706,-105.0204836274754));
PolygonOptions polygon = new PolygonOptions();
polygon.addAll(coordinates);
polygon.fillColor(Color.rgb(255, 102, 0));
polygon.strokeColor(Color.BLACK);
mapboxMap.addPolygon(polygon);
}
@Override
public void onResume()
{ super.onResume(); mMapView.onResume(); }
@Override
public void onPause()
{ super.onPause(); mMapView.onPause(); }
@Override
protected void onDestroy()
{ super.onDestroy(); mMapView.onDestroy(); }
@Override
protected void onSaveInstanceState(Bundle outState)
{ super.onSaveInstanceState(outState); mMapView.onSaveInstanceState(outState); }
}
import android.app.Activity;
import android.os.Bundle;
import com.mapbox.mapboxsdk.camera.CameraUpdateFactory;
import com.mapbox.mapboxsdk.geometry.LatLng;
import com.mapbox.mapboxsdk.maps.MapboxMap;
import com.mapbox.mapboxsdk.maps.OnMapReadyCallback;
import com.mapquest.mapping.MapQuest;
import com.mapquest.mapping.maps.MapView;
import com.mapquest.mapping.maps.MapboxMapTrafficPresenter;
import com.mapquest.mapping.maps.MyLocationPresenter;
public class MainActivity extends Activity {
private final LatLng MAPQUEST_HEADQUARTERS_LOCATION = new LatLng(39.750307, -104.999472);
private MapView mMapView;
private MapboxMap mMapboxMap;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
MapQuest.start(getApplicationContext());
setContentView(R.layout.activity_main);
mMapView = (MapView) findViewById(R.id.mapquestMapView);
mMapView.onCreate(savedInstanceState);
mMapView.getMapAsync(new OnMapReadyCallback() {
@Override
public void onMapReady(MapboxMap mapboxMap) {
mMapboxMap = mapboxMap;
mMapView.setStreetMode();
mMapboxMap.moveCamera(CameraUpdateFactory.newLatLngZoom(MAPQUEST_HEADQUARTERS_LOCATION, 13));
enableTraffic(mMapboxMap);
enableIncidents(mMapboxMap);
}
});
}
private void enableTraffic(MapboxMap mapboxmap) {
mapboxmap.setTrafficFlowLayerOn();
}
private void enableIncidents(MapboxMap mapboxMap) {
mapboxMap.setTrafficIncidentLayerOn();
}
@Override
public void onResume()
{ super.onResume(); mMapView.onResume(); }
@Override
public void onPause()
{ super.onPause(); mMapView.onPause(); }
@Override
protected void onDestroy()
{ super.onDestroy(); mMapView.onDestroy(); }
@Override
protected void onSaveInstanceState(Bundle outState)
{ super.onSaveInstanceState(outState); mMapView.onSaveInstanceState(outState); }
}
import android.app.Activity;
import android.os.Bundle;
import com.mapbox.mapboxsdk.geometry.LatLng;
import com.mapbox.mapboxsdk.maps.MapboxMap;
import com.mapbox.mapboxsdk.maps.OnMapReadyCallback;
import com.mapquest.mapping.MapQuest;
import com.mapquest.mapping.maps.MapView;
public class MainActivity extends Activity {
private MapView mMapView;
private MapboxMap mMapboxMap;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
MapQuest.start(getApplicationContext());
setContentView(R.layout.activity_main);
mMapView = (MapView) findViewById(R.id.mapquestMapView);
mMapView.onCreate(savedInstanceState);
mMapView.getMapAsync(new OnMapReadyCallback() {
@Override
public void onMapReady(MapboxMap mapboxMap) {
mMapboxMap = mapboxMap;
mMapView.setNightMode();
}
});
}
@Override
public void onResume()
{ super.onResume(); mMapView.onResume(); }
@Override
public void onPause()
{ super.onPause(); mMapView.onPause(); }
@Override
protected void onDestroy()
{ super.onDestroy(); mMapView.onDestroy(); }
@Override
protected void onSaveInstanceState(Bundle outState)
{ super.onSaveInstanceState(outState); mMapView.onSaveInstanceState(outState); }
}