Skip to content

Commit

Permalink
OSRM changes: default root url, user agent, option to set the mean of…
Browse files Browse the repository at this point in the history
… transportation. See issue #406
  • Loading branch information
MKergall committed Apr 24, 2021
1 parent a7ac2b2 commit 93e27e5
Show file tree
Hide file tree
Showing 4 changed files with 20 additions and 20 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -28,9 +28,13 @@
*/
public class OSRMRoadManager extends RoadManager {

static final String SERVICE = "https://router.project-osrm.org/route/v1/driving/";
static final String DEFAULT_SERVICE = "https://routing.openstreetmap.de/";
public static final String MEAN_BY_CAR = "routed-car/route/v1/driving/";
public static final String MEAN_BY_BIKE = "routed-bike/route/v1/driving/";
public static final String MEAN_BY_FOOT = "routed-foot/route/v1/driving/";
private final Context mContext;
protected String mServiceUrl;
protected String mMeanUrl;
protected String mUserAgent;

/**
Expand Down Expand Up @@ -113,27 +117,26 @@ public class OSRMRoadManager extends RoadManager {
DIRECTIONS.put(34, R.string.osmbonuspack_directions_34);
}

public OSRMRoadManager(Context context){
public OSRMRoadManager(Context context, String userAgent){
super();
mContext = context;
mServiceUrl = SERVICE;
mUserAgent = BonusPackHelper.DEFAULT_USER_AGENT; //set user agent to the default one.
mUserAgent = userAgent;
mServiceUrl = DEFAULT_SERVICE;
mMeanUrl = MEAN_BY_CAR;
}

/** allows to request on an other site than OSRM demo site */
public void setService(String serviceUrl){
mServiceUrl = serviceUrl;
}

/** allows to send to OSRM service a user agent specific to the app,
* instead of the default user agent of OSMBonusPack lib.
*/
public void setUserAgent(String userAgent){
mUserAgent = userAgent;
/** to switch to another mean of transportation */
public void setMean(String meanUrl){
mMeanUrl = meanUrl;
}

protected String getUrl(ArrayList<GeoPoint> waypoints, boolean getAlternate) {
StringBuilder urlString = new StringBuilder(mServiceUrl);
StringBuilder urlString = new StringBuilder(mServiceUrl+mMeanUrl);
for (int i=0; i<waypoints.size(); i++){
GeoPoint p = waypoints.get(i);
if (i>0)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -107,10 +107,9 @@ public class MainActivity extends Activity implements MapEventsReceiver, MapView
map.getOverlays().add(startMarker);

//1. "Hello, Routing World"
RoadManager roadManager = new OSRMRoadManager(this);
RoadManager roadManager = new OSRMRoadManager(this, "OBP_Tuto/1.0");
//2. Playing with the RoadManager
//roadManager roadManager = new MapQuestRoadManager("YOUR_API_KEY");
//roadManager.addRequestOption("routeType=bicycle");
//((OSRMRoadManager)roadManager).setMean(OSRMRoadManager.MEAN_BY_BIKE);
ArrayList<GeoPoint> waypoints = new ArrayList<GeoPoint>();
waypoints.add(startPoint);
GeoPoint endPoint = new GeoPoint(48.4, -1.9);
Expand Down
4 changes: 2 additions & 2 deletions OSMNavigator/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,8 @@ android {
applicationId "com.osmnavigator"
minSdkVersion 16
targetSdkVersion 28
versionCode 22
versionName "2.2"
versionCode 23
versionName "2.3"
}
buildTypes {
release {
Expand Down
6 changes: 2 additions & 4 deletions OSMNavigator/src/main/java/com/osmnavigator/MapActivity.java
Original file line number Diff line number Diff line change
Expand Up @@ -175,7 +175,7 @@ public class MapActivity extends Activity implements MapEventsReceiver, Location
OnlineTileSourceBase MAPBOXSATELLITELABELLED;
boolean mNightMode;

static final String userAgent = "OsmNavigator/2.2";
static final String userAgent = "OsmNavigator/2.3";

static String graphHopperApiKey;
static String flickrApiKey;
Expand Down Expand Up @@ -973,9 +973,7 @@ protected Road[] doInBackground(ArrayList<GeoPoint>... params) {
Locale locale = Locale.getDefault();
switch (mWhichRouteProvider){
case OSRM:
roadManager = new OSRMRoadManager(mContext);
// TEST TEST TEST of MapQuest API V2:
//roadManager = new MapQuestRoadManager("Fmjtd|luubn10zn9,8s=o5-90rnq6");
roadManager = new OSRMRoadManager(mContext, userAgent);
break;
case GRAPHHOPPER_FASTEST:
roadManager = new GraphHopperRoadManager(graphHopperApiKey, false);
Expand Down

0 comments on commit 93e27e5

Please sign in to comment.