@@ -4,7 +4,7 @@ This guide helps you choose and configure the right map type for your OpenMapVie
44
55## Quick Start
66
7- OpenMapView provides ** 10 map types** matching the OpenStreetMap.org layer switcher. Six types work without any configuration, while four premium types require free API keys.
7+ OpenMapView provides ** 9 map types** matching the OpenStreetMap.org layer switcher. Six types work without any configuration, while three premium types require free API keys.
88
99``` kotlin
1010val mapView = OpenMapView (context)
@@ -49,7 +49,7 @@ mapView.setMapType(MapType.CYCLOSM)
4949```
5050
5151#### 3. HUMANITARIAN - Emergency Response
52- ** ` MapType.HUMANITARIAN ` ** (constant value: 6 )
52+ ** ` MapType.HUMANITARIAN ` ** (constant value: 7 )
5353
5454Humanitarian OpenStreetMap Team (HOT) style with red/orange color scheme.
5555
@@ -65,7 +65,7 @@ mapView.setMapType(MapType.HUMANITARIAN)
6565```
6666
6767#### 4. OPNVKARTE - German Public Transport
68- ** ` MapType.OPNVKARTE ` ** (constant value: 7 )
68+ ** ` MapType.OPNVKARTE ` ** (constant value: 8 )
6969
7070Detailed public transport map focusing on German transit networks.
7171
@@ -142,8 +142,27 @@ Public transport focused map with comprehensive transit information.
142142mapView.setMapType(MapType .TRANSPORT )
143143```
144144
145- #### 8. TRACESTRACK_TOPO - Topographic Map
146- ** ` MapType.TRACESTRACK_TOPO ` ** (constant value: 5) 🔑 ** Requires Tracestrack API Key**
145+ #### 8. TRANSPORT_DARK - Dark Mode Public Transit Map
146+ ** ` MapType.TRANSPORT_DARK ` ** (constant value: 5) ** Requires Thunderforest API Key**
147+
148+ Dark variant of the public transport map with comprehensive transit information in a dark color scheme.
149+
150+ - ** Best for** : Night mode transit apps, low-light journey planning, dark mode applications
151+ - ** Features** : Bus routes, train lines, tram tracks, transit stations
152+ - ** Highlights** : Dark color scheme suitable for night mode
153+ - ** Tile Server** : tile.thunderforest.com
154+ - ** Max Zoom** : 21
155+ - ** Free Tier** : 150,000 tiles/month
156+ - ** Get API Key** : https://www.thunderforest.com/pricing/
157+ - ** Attribution** : © OpenStreetMap contributors. Tiles courtesy of Andy Allan
158+
159+ ``` kotlin
160+ // Same API key as CYCLEMAP and TRANSPORT
161+ mapView.setMapType(MapType .TRANSPORT_DARK )
162+ ```
163+
164+ #### 9. TRACESTRACK_TOPO - Topographic Map
165+ ** ` MapType.TRACESTRACK_TOPO ` ** (constant value: 6) ** Requires Tracestrack API Key**
147166
148167Detailed topographic map with elevation contours and hillshading.
149168
@@ -168,25 +187,6 @@ ApiKeyManager.setApiKey("tracestrack", "your_key_here")
168187mapView.setMapType(MapType .TRACESTRACK_TOPO )
169188```
170189
171- #### 9. MAPTILER_OMT - OpenMapTiles Vector Style
172- ** ` MapType.MAPTILER_OMT ` ** (constant value: 9) 🔑🚧 ** Not Yet Supported**
173-
174- High-quality vector tile map based on OpenMapTiles schema.
175-
176- - ** Status** : Not yet supported - requires MapLibre GL integration
177- - ** Get API Key** : https://www.maptiler.com/cloud/plans/
178- - ** Free Tier** : 100,000 tiles/month
179-
180- ### Vector Tile Support
181-
182- #### 10. SHORTBREAD - Modern Vector Style
183- ** ` MapType.SHORTBREAD ` ** (constant value: 8) 🚧 ** Not Yet Supported**
184-
185- Modern, clean vector-based map style.
186-
187- - ** Status** : Not yet supported - requires MapLibre GL integration
188- - ** No API Key Required**
189-
190190## API Key Configuration
191191
192192### Method 1: AndroidManifest.xml (Recommended)
@@ -195,7 +195,7 @@ Add API keys to your app's `AndroidManifest.xml`:
195195
196196``` xml
197197<application >
198- <!-- Thunderforest (for CYCLEMAP and TRANSPORT ) -->
198+ <!-- Thunderforest (for CYCLEMAP, TRANSPORT, and TRANSPORT_DARK ) -->
199199 <meta-data
200200 android : name =" de.afarber.openmapview.THUNDERFOREST_API_KEY"
201201 android : value =" your_thunderforest_key_here" />
@@ -204,11 +204,6 @@ Add API keys to your app's `AndroidManifest.xml`:
204204 <meta-data
205205 android : name =" de.afarber.openmapview.TRACESTRACK_API_KEY"
206206 android : value =" your_tracestrack_key_here" />
207-
208- <!-- MapTiler (for MAPTILER_OMT - when supported) -->
209- <meta-data
210- android : name =" de.afarber.openmapview.MAPTILER_API_KEY"
211- android : value =" your_maptiler_key_here" />
212207</application >
213208```
214209
@@ -221,30 +216,23 @@ import de.afarber.openmapview.ApiKeyManager
221216
222217ApiKeyManager .setApiKey(" thunderforest" , " your_key_here" )
223218ApiKeyManager .setApiKey(" tracestrack" , " your_key_here" )
224- ApiKeyManager .setApiKey(" maptiler" , " your_key_here" )
225219```
226220
227221### Obtaining API Keys
228222
229223All providers offer generous free tiers suitable for development and small-scale production use:
230224
231- #### Thunderforest (CYCLEMAP, TRANSPORT)
225+ #### Thunderforest (CYCLEMAP, TRANSPORT, TRANSPORT_DARK )
232226- ** Website** : https://www.thunderforest.com/pricing/
233227- ** Free Tier** : 150,000 tiles/month
234228- ** Sign Up** : Register for free account
235- - ** One key works for** : Both CYCLEMAP and TRANSPORT
229+ - ** One key works for** : CYCLEMAP, TRANSPORT, and TRANSPORT_DARK
236230
237231#### Tracestrack (TRACESTRACK_TOPO)
238232- ** Website** : https://www.tracestrack.com/en/signup
239233- ** Free Tier** : 100,000 tiles/month
240234- ** Sign Up** : Register for free account
241235
242- #### MapTiler (MAPTILER_OMT)
243- - ** Website** : https://www.maptiler.com/cloud/plans/
244- - ** Free Tier** : 100,000 tiles/month
245- - ** Sign Up** : Register for free account
246- - ** Note** : MAPTILER_OMT not yet supported (vector tiles)
247-
248236### Security Best Practices
249237
2502381 . ** Use Domain Restrictions** : Configure API keys on provider websites to restrict usage to your app's domain/bundle ID
@@ -262,6 +250,7 @@ All providers offer generous free tiers suitable for development and small-scale
262250| Cycling/bike app (free) | ` CYCLOSM ` |
263251| Cycling/bike app (premium) | ` CYCLEMAP ` (requires API key) |
264252| Public transit app | ` TRANSPORT ` (requires API key) |
253+ | Public transit app (dark mode) | ` TRANSPORT_DARK ` (requires API key) |
265254| German transit app | ` OPNVKARTE ` |
266255| Hiking/outdoor app | ` TRACESTRACK_TOPO ` (requires API key) |
267256| Emergency/humanitarian | ` HUMANITARIAN ` |
@@ -294,8 +283,8 @@ See `PredefinedTileProviders.kt` for predefined overlay sources, or create custo
294283## Example Usage
295284
296285See the ** Example11MapTypes** sample app for a complete demonstration of all map types with:
297- - Buttons to switch between all 10 map types
298- - Visual indicators for API key requirements (🔑) and coming soon features (🚧)
286+ - Buttons to switch between all 9 map types
287+ - Visual indicators for API key requirements
299288- Descriptions of each map type
300289- Instructions for API key configuration
301290
0 commit comments