Skip to content
This repository has been archived by the owner on Aug 8, 2023. It is now read-only.

Version default style URL APIs; deprecate Emerald #4759

Merged
merged 6 commits into from
May 6, 2016
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 5 additions & 3 deletions include/mbgl/util/default_styles.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -14,17 +14,19 @@ struct DefaultStyle {
};

extern const DefaultStyle streets;
extern const DefaultStyle emerald;
extern const DefaultStyle outdoors;
extern const DefaultStyle light;
extern const DefaultStyle dark;
extern const DefaultStyle satellite;
extern const DefaultStyle hybrid;
extern const DefaultStyle satelliteStreets;

const DefaultStyle orderedStyles[] = {
streets, emerald, light, dark, satellite, hybrid,
streets, outdoors, light, dark, satellite, satelliteStreets,
};
const size_t numOrderedStyles = sizeof(orderedStyles) / sizeof(DefaultStyle);

static const unsigned currentVersion = 9;

} // end namespace default_styles
} // end namespace util
} // end namespace mbgl
Expand Down
Original file line number Diff line number Diff line change
@@ -1,11 +1,14 @@
package com.mapbox.mapboxsdk.constants;

import android.support.annotation.IntRange;
import android.support.annotation.StringDef;

import com.mapbox.mapboxsdk.maps.MapView;

import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.util.Locale;

/**
* <p>
* Style provides URLs to several professional styles designed by Mapbox.
Expand All @@ -16,40 +19,197 @@
*/
public class Style {

/**
* Mapbox Streets: A complete basemap, perfect for incorporating your own data.
*/
private static final String MAPBOX_STREETS_BASE = "mapbox://styles/mapbox/streets-v%d";
/**
* Outdoors: A rugged style that emphasizes physical terrain and outdoor activities.
*/
private static final String OUTDOORS_BASE = "mapbox://styles/mapbox/outdoors-v%d";
/**
* Light: Subtle light backdrop for data visualizations.
*/
private static final String LIGHT_BASE = "mapbox://styles/mapbox/light-v%d";
/**
* Dark: Subtle dark backdrop for data visualizations.
*/
private static final String DARK_BASE = "mapbox://styles/mapbox/dark-v%d";
/**
* Satellite: A beautiful global satellite and aerial imagery layer.
*/
private static final String SATELLITE_BASE = "mapbox://styles/mapbox/satellite-v%d";
/**
* Satellite Streets: Global satellite and aerial imagery with unobtrusive labels.
*/
private static final String SATELLITE_STREETS_BASE = "mapbox://styles/mapbox/satellite-hybrid-v%d";

/**
* Get versioned url of Mapbox streets style.
* <p>
* <ul>
* <li>Current default version is 9.</li>
* </ul
* </p>
* <p>
* More information on the Mapbox styles API can be found on https://www.mapbox.com/api-documentation/#styles
* </p>
*
* @param version the version of the style.
* @return uri to load style from
*/
public static String getMapboxStreetsUrl(int version) {
return String.format(Locale.US, MAPBOX_STREETS_BASE, version);
}

/**
* Get versioned url of Outdoors streets style.
* <p>
* <ul>
* <li>Current version is 9.</li>
* </ul>
* </p>
* <p>
* More information on the Mapbox styles API can be found on https://www.mapbox.com/api-documentation/#styles
* </p>
*
* @param version the version of the style.
* @return uri to load style from
*/
public static String getOutdoorsStyleUrl(int version) {
return String.format(Locale.US, OUTDOORS_BASE, version);
}

/**
* Get versioned url of Light style.
* <p>
* <ul>
* <li>Current default version is 9.</li>
* </ul>
* </p>
* <p>
* More information on the Mapbox styles API can be found on https://www.mapbox.com/api-documentation/#styles
* </p>
*
* @param version the version of the style.
* @return uri to load style from
*/
public static String getLightStyleUrl(int version) {
return String.format(Locale.US, LIGHT_BASE, version);
}

/**
* Get versioned url of Dark style.
* <p>
* <ul>
* <li>Current default version is 9.</li>
* </ul>
* </p>
* <p>
* More information on the Mapbox styles API can be found on https://www.mapbox.com/api-documentation/#styles
* </p>
*
* @param version the version of the style.
* @return uri to load style from
*/
public static String getDarkStyleUrl(int version) {
return String.format(Locale.US, DARK_BASE, version);
}

/**
* Get versioned url of Satellite style.
* <p>
* <ul>
* <li>Current version is 9.</li>
* </ul>
* </p>
* <p>
* More information on the Mapbox styles API can be found on https://www.mapbox.com/api-documentation/#styles
* </p>
*
* @param version the version of the style.
* @return uri to load style from
*/
public static String getSatelliteStyleUrl(int version) {
return String.format(Locale.US, SATELLITE_BASE, version);
}

/**
* Get versioned url of Satellite streets style.
* <p>
* <ul>
* <li>Current version is 9.</li>
* </ul>
* </p>
* <p>
* More information on the Mapbox styles API can be found on https://www.mapbox.com/api-documentation/#styles
* </p>
*
* @param version the version of the style.
* @return uri to load style from
*/
public static String getSatelliteStreetsStyleUrl(int version) {
return String.format(Locale.US, SATELLITE_STREETS_BASE, version);
}

/**
* Indicates the parameter accepts one of the values from {@link Style}.
*
* @deprecated use dedicated versioned methods in {@link Style} instead.
*/
@StringDef({MAPBOX_STREETS, EMERALD, LIGHT, DARK, SATELLITE, SATELLITE_STREETS})
@Retention(RetentionPolicy.SOURCE)
@Deprecated
public @interface StyleUrl {
}

// IMPORTANT: If you change any of these you also need to edit them in strings.xml

/**
* Mapbox Streets: A complete basemap, perfect for incorporating your own data.
*
* @deprecated use {@link #getMapboxStreetsUrl(int)} instead.
*/
public static final String MAPBOX_STREETS = "mapbox://styles/mapbox/streets-v8";
@Deprecated
public static final String MAPBOX_STREETS = "mapbox://styles/mapbox/streets-v9";

/**
* Emerald: A versatile style, with emphasis on road networks and public transit.
*
* @deprecated this style has been deprecated and will be removed in future versions.
*/
@Deprecated
public static final String EMERALD = "mapbox://styles/mapbox/emerald-v8";

/**
* Light: Subtle light backdrop for data visualizations.
*
* @deprecated use {@link #getLightStyleUrl(int)} instead.
*/
public static final String LIGHT = "mapbox://styles/mapbox/light-v8";
@Deprecated
public static final String LIGHT = "mapbox://styles/mapbox/light-v9";

/**
* Dark: Subtle dark backdrop for data visualizations.
*
* @deprecated use {@link #getDarkStyleUrl(int)} (int)} instead.
*/
public static final String DARK = "mapbox://styles/mapbox/dark-v8";
@Deprecated
public static final String DARK = "mapbox://styles/mapbox/dark-v9";

/**
* Satellite: A beautiful global satellite and aerial imagery layer.
*
* @deprecated use {@link #getSatelliteStyleUrl(int)} instead.
*/
public static final String SATELLITE = "mapbox://styles/mapbox/satellite-v8";
@Deprecated
public static final String SATELLITE = "mapbox://styles/mapbox/satellite-v9";

/**
* Satellite Streets: Global satellite and aerial imagery with unobtrusive labels.
*
* @deprecated use {@link #getSatelliteStreetsStyleUrl(int)} (int)} instead.
*/
public static final String SATELLITE_STREETS = "mapbox://styles/mapbox/satellite-hybrid-v8";

@Deprecated
public static final String SATELLITE_STREETS = "mapbox://styles/mapbox/satellite-hybrid-v9";
}
Original file line number Diff line number Diff line change
Expand Up @@ -779,7 +779,7 @@ void cycleDebugOptions() {
* <li>{@code asset://...}:
* reads the style from the APK {@code assets/} directory.
* This is used to load a style bundled with your app.</li>
* <li>{@code null}: loads the default {@link Style#MAPBOX_STREETS} style.</li>
* <li>{@code null}: loads the default {@link Style#getMapboxStreetsUrl(int)} style.</li>
* </ul>
* <p>
* This method is asynchronous and will return immediately before the style finishes loading.
Expand Down Expand Up @@ -2679,7 +2679,7 @@ private class StyleInitializer {
private boolean mDefaultStyle;

public StyleInitializer() {
mStyle = Style.MAPBOX_STREETS;
mStyle = Style.getMapboxStreetsUrl(getResources().getInteger(R.integer.style_version));
mDefaultStyle = true;
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -523,7 +523,7 @@ public void cycleDebugOptions() {
* <li>{@code asset://...}:
* reads the style from the APK {@code assets/} directory.
* This is used to load a style bundled with your app.</li>
* <li>{@code null}: loads the default {@link Style#MAPBOX_STREETS} style.</li>
* <li>{@code null}: loads the default {@link Style#getMapboxStreetsUrl(int)} style.</li>
* </ul>
* <p>
* This method is asynchronous and will return immediately before the style finishes loading.
Expand Down Expand Up @@ -553,8 +553,10 @@ public void setStyleUrl(@NonNull String url) {
*
* @param style The bundled style. Accepts one of the values from {@link Style}.
* @see Style
* @deprecated use {@link #setStyleUrl(String)} instead with versioned url methods from {@link Style}
*/
@UiThread
@Deprecated
public void setStyle(@Style.StyleUrl String style) {
setStyleUrl(style);
}
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<integer name="style_version">9</integer>
</resources>
Original file line number Diff line number Diff line change
Expand Up @@ -11,10 +11,11 @@
<string name="infoWindowAddress">Address</string>

<!-- these are public -->
<string name="style_mapbox_streets">mapbox://styles/mapbox/streets-v8</string>
<!-- {@deprecated Use Style.getXStyleUrl(int version) instead.} -->
<string name="style_mapbox_streets">mapbox://styles/mapbox/streets-v9</string>
<string name="style_emerald">mapbox://styles/mapbox/emerald-v8</string>
<string name="style_light">mapbox://styles/mapbox/light-v8</string>
<string name="style_dark">mapbox://styles/mapbox/dark-v8</string>
<string name="style_satellite">mapbox://styles/mapbox/satellite-v8</string>
<string name="style_satellite_streets">mapbox://styles/mapbox/satellite-hybrid-v8</string>
<string name="style_light">mapbox://styles/mapbox/light-v9</string>
<string name="style_dark">mapbox://styles/mapbox/dark-v9</string>
<string name="style_satellite">mapbox://styles/mapbox/satellite-v9</string>
<string name="style_satellite_streets">mapbox://styles/mapbox/satellite-hybrid-v9</string>
</resources>
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@
import com.mapbox.mapboxsdk.maps.MapboxMapOptions;
import com.mapbox.mapboxsdk.maps.OnMapReadyCallback;
import com.mapbox.mapboxsdk.testapp.R;
import com.mapbox.mapboxsdk.testapp.model.constants.AppConstant;

import java.util.ArrayList;
import java.util.List;
Expand All @@ -43,7 +44,7 @@ protected void onCreate(Bundle savedInstanceState) {
MapboxMapOptions options = new MapboxMapOptions()
.attributionTintColor(Color.RED)
.accessToken(getString(R.string.mapbox_access_token))
.styleUrl(Style.MAPBOX_STREETS)
.styleUrl(Style.getMapboxStreetsUrl(AppConstant.STYLE_VERSION))
.camera(new CameraPosition.Builder()
.target(new LatLng(45.520486, -122.673541))
.zoom(12)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@
import com.mapbox.mapboxsdk.maps.UiSettings;
import com.mapbox.mapboxsdk.testapp.R;
import com.mapbox.mapboxsdk.maps.MapView;
import com.mapbox.mapboxsdk.testapp.model.constants.AppConstant;

public class LatLngBoundsActivity extends AppCompatActivity {

Expand All @@ -43,7 +44,7 @@ protected void onCreate(Bundle savedInstanceState) {

mMapView = (MapView) findViewById(R.id.mapView);
mMapView.setAccessToken(getString(R.string.mapbox_access_token));
mMapView.setStyle(Style.DARK);
mMapView.setStyleUrl(Style.getDarkStyleUrl(AppConstant.STYLE_VERSION));
mMapView.onCreate(savedInstanceState);
mMapView.getMapAsync(new OnMapReadyCallback() {
@Override
Expand Down Expand Up @@ -78,8 +79,6 @@ public void onMapReady(@NonNull final MapboxMap mapboxMap) {
Log.v(MapboxConstants.TAG, mapboxMap.getProjection().getVisibleRegion().latLngBounds.toString());
}
});


}

@Override
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@
import com.mapbox.mapboxsdk.maps.UiSettings;
import com.mapbox.mapboxsdk.testapp.R;
import com.mapbox.mapboxsdk.maps.MapView;
import com.mapbox.mapboxsdk.testapp.model.constants.AppConstant;

public class ManualZoomActivity extends AppCompatActivity {

Expand All @@ -39,7 +40,7 @@ protected void onCreate(Bundle savedInstanceState) {

mMapView = (MapView) findViewById(R.id.manualZoomMapView);
mMapView.setAccessToken(getString(R.string.mapbox_access_token));
mMapView.setStyleUrl(Style.SATELLITE_STREETS);
mMapView.setStyleUrl(Style.getSatelliteStyleUrl(AppConstant.STYLE_VERSION));
mMapView.onCreate(savedInstanceState);
mMapView.getMapAsync(new OnMapReadyCallback() {
@Override
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@
import com.mapbox.mapboxsdk.maps.MapboxMapOptions;
import com.mapbox.mapboxsdk.maps.OnMapReadyCallback;
import com.mapbox.mapboxsdk.testapp.R;
import com.mapbox.mapboxsdk.testapp.model.constants.AppConstant;

public class MapFragmentActivity extends AppCompatActivity {

Expand All @@ -40,7 +41,7 @@ protected void onCreate(Bundle savedInstanceState) {

MapboxMapOptions options = new MapboxMapOptions();
options.accessToken(getString(R.string.mapbox_access_token));
options.styleUrl(Style.EMERALD);
options.styleUrl(Style.getOutdoorsStyleUrl(AppConstant.STYLE_VERSION));

options.scrollGesturesEnabled(false);
options.zoomGesturesEnabled(false);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@
import com.mapbox.mapboxsdk.maps.OnMapReadyCallback;
import com.mapbox.mapboxsdk.maps.SupportMapFragment;
import com.mapbox.mapboxsdk.testapp.R;
import com.mapbox.mapboxsdk.testapp.model.constants.AppConstant;

public class SupportMapFragmentActivity extends AppCompatActivity {

Expand All @@ -40,7 +41,7 @@ protected void onCreate(Bundle savedInstanceState) {

MapboxMapOptions options = new MapboxMapOptions();
options.accessToken(getString(R.string.mapbox_access_token));
options.styleUrl(Style.SATELLITE_STREETS);
options.styleUrl(Style.getSatelliteStreetsStyleUrl(AppConstant.STYLE_VERSION));

options.scrollGesturesEnabled(false);
options.zoomGesturesEnabled(false);
Expand Down
Loading