Skip to content
This repository was archived by the owner on Dec 18, 2023. It is now read-only.

Commit e1af67f

Browse files
committed
Update osmdroid to v6.1.8
This commit aims to get Mapnik working for newer Android versions, which is done by upgrading osmdroid to latest. This update implies some porting work : - use Double instead of int argument when calling setMinZoomLevel. - enhance osmdroid configuration : call 'load' to ensure config (github.com/osmdroid/osmdroid/wiki/How-to-use-the-osmdroid-library) and customize user-agent to access tiles following recommendations (github.com/osmdroid/osmdroid/wiki/Important-notes-on-using-osmdroid- in-your-app#set-the-http-user-agent-variable). - replace the discarded OpenCycleMap tile source by HikeBikeMap.
1 parent ac04178 commit e1af67f

4 files changed

Lines changed: 18 additions & 5 deletions

File tree

app/build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ android {
4848
}
4949

5050
dependencies {
51-
compile 'org.osmdroid:osmdroid-android:5.6.4'
51+
compile 'org.osmdroid:osmdroid-android:6.1.8'
5252
compile 'com.github.MKergall:osmbonuspack:6.3'
5353
compile 'com.android.support:support-v4:23.0.1'
5454
}

app/src/main/java/be/brunoparmentier/openbikesharing/app/activities/MapActivity.java

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,7 @@
3939

4040
import org.osmdroid.api.IMapController;
4141
import org.osmdroid.bonuspack.clustering.GridMarkerClusterer;
42+
import org.osmdroid.config.Configuration;
4243
import org.osmdroid.events.MapEventsReceiver;
4344
import org.osmdroid.tileprovider.tilesource.TileSourceFactory;
4445
import org.osmdroid.util.GeoPoint;
@@ -53,6 +54,7 @@
5354
import java.util.ArrayList;
5455

5556
import be.brunoparmentier.openbikesharing.app.R;
57+
import be.brunoparmentier.openbikesharing.app.BuildConfig;
5658
import be.brunoparmentier.openbikesharing.app.db.StationsDataSource;
5759
import be.brunoparmentier.openbikesharing.app.models.Station;
5860
import be.brunoparmentier.openbikesharing.app.models.StationStatus;
@@ -96,6 +98,10 @@ protected void onCreate(Bundle savedInstanceState) {
9698
stationsDataSource = new StationsDataSource(this);
9799
ArrayList<Station> stations = stationsDataSource.getStations();
98100

101+
final Context context = getApplicationContext();
102+
Configuration.getInstance().load(context, PreferenceManager.getDefaultSharedPreferences(context));
103+
Configuration.getInstance().setUserAgentValue(BuildConfig.APPLICATION_ID);
104+
99105
map = (MapView) findViewById(R.id.mapView);
100106
stationMarkerInfoWindow = new StationMarkerInfoWindow(R.layout.bonuspack_bubble, map);
101107

@@ -118,7 +124,7 @@ protected void onCreate(Bundle savedInstanceState) {
118124

119125
map.setMultiTouchControls(true);
120126
map.setBuiltInZoomControls(true);
121-
map.setMinZoomLevel(3);
127+
map.setMinZoomLevel(Double.valueOf(3));
122128

123129
/* map tile source */
124130
String mapLayer = settings.getString(PREF_KEY_MAP_LAYER, "");
@@ -127,7 +133,7 @@ protected void onCreate(Bundle savedInstanceState) {
127133
map.setTileSource(TileSourceFactory.MAPNIK);
128134
break;
129135
case MAP_LAYER_CYCLEMAP:
130-
map.setTileSource(TileSourceFactory.CYCLEMAP);
136+
map.setTileSource(TileSourceFactory.HIKEBIKEMAP);
131137
break;
132138
case MAP_LAYER_OSMPUBLICTRANSPORT:
133139
map.setTileSource(TileSourceFactory.PUBLIC_TRANSPORT);

app/src/main/java/be/brunoparmentier/openbikesharing/app/activities/StationActivity.java

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919

2020
import android.app.Activity;
2121
import android.appwidget.AppWidgetManager;
22+
import android.content.Context;
2223
import android.content.Intent;
2324
import android.content.SharedPreferences;
2425
import android.content.pm.PackageManager;
@@ -36,6 +37,7 @@
3637
import android.widget.Toast;
3738

3839
import org.osmdroid.api.IMapController;
40+
import org.osmdroid.config.Configuration;
3941
import org.osmdroid.tileprovider.tilesource.TileSourceFactory;
4042
import org.osmdroid.util.GeoPoint;
4143
import org.osmdroid.views.MapView;
@@ -48,6 +50,7 @@
4850
import java.util.TimeZone;
4951

5052
import be.brunoparmentier.openbikesharing.app.R;
53+
import be.brunoparmentier.openbikesharing.app.BuildConfig;
5154
import be.brunoparmentier.openbikesharing.app.db.StationsDataSource;
5255
import be.brunoparmentier.openbikesharing.app.models.Station;
5356
import be.brunoparmentier.openbikesharing.app.models.StationStatus;
@@ -79,6 +82,10 @@ protected void onCreate(Bundle savedInstanceState) {
7982

8083
station = (Station) getIntent().getSerializableExtra(KEY_STATION);
8184

85+
final Context context = getApplicationContext();
86+
Configuration.getInstance().load(context, PreferenceManager.getDefaultSharedPreferences(context));
87+
Configuration.getInstance().setUserAgentValue(BuildConfig.APPLICATION_ID);
88+
8289
map = (MapView) findViewById(R.id.mapView);
8390
final GeoPoint stationLocation = new GeoPoint((int) (station.getLatitude() * 1000000),
8491
(int) (station.getLongitude() * 1000000));
@@ -93,7 +100,7 @@ protected void onCreate(Bundle savedInstanceState) {
93100
map.setTileSource(TileSourceFactory.MAPNIK);
94101
break;
95102
case MAP_LAYER_CYCLEMAP:
96-
map.setTileSource(TileSourceFactory.CYCLEMAP);
103+
map.setTileSource(TileSourceFactory.HIKEBIKEMAP);
97104
break;
98105
case MAP_LAYER_OSMPUBLICTRANSPORT:
99106
map.setTileSource(TileSourceFactory.PUBLIC_TRANSPORT);

app/src/main/res/values/strings.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -121,7 +121,7 @@
121121
<string name="pref_title_version">Version</string>
122122
<string name="pref_map_layer_title">Map layer</string>
123123
<string name="pref_map_layer_mapnik" translatable="false">Mapnik</string>
124-
<string name="pref_map_layer_cyclemap" translatable="false">OpenCycleMap</string>
124+
<string name="pref_map_layer_cyclemap" translatable="false">Hike &amp; Bike Map</string>
125125
<string name="pref_map_layer_osmpublictransport" translatable="false">OSMPublicTransport</string>
126126
<string name="pref_title_strip_station_id">Strip station ID</string>
127127
<string name="pref_title_strip_station_id_summary">

0 commit comments

Comments
 (0)