
public class DefaultConfigurationProvider extends Object implements IConfigurationProvider
IConfigurationProvider,
Configuration| Modifier and Type | Field and Description |
|---|---|
protected short |
cacheMapTileCount |
protected boolean |
debugMapTileDownloader |
protected boolean |
debugMapView |
protected boolean |
debugMode |
protected boolean |
debugTileProviders |
protected long |
expirationAdder |
protected Long |
expirationOverride |
protected long |
gpsWaitTime |
protected SimpleDateFormat |
httpHeaderDateTimeFormat |
protected boolean |
isMapViewHardwareAccelerated |
protected File |
osmdroidBasePath |
protected File |
osmdroidTileCache |
protected short |
tileDownloadMaxQueueSize |
protected short |
tileDownloadThreads |
protected long |
tileFileSystemCacheMaxBytes |
protected long |
tileFileSystemCacheTrimBytes |
protected short |
tileFileSystemMaxQueueSize |
protected short |
tileFileSystemThreads |
protected String |
userAgentHttpHeader |
protected String |
userAgentValue |
| Constructor and Description |
|---|
DefaultConfigurationProvider() |
| Modifier and Type | Method and Description |
|---|---|
short |
getCacheMapTileCount()
Initial tile cache size (in memory).
|
long |
getExpirationExtendedDuration()
Returns the amount of time in ms added to server specified tile expiration time
Added as part of issue https://github.com/osmdroid/osmdroid/issues/490
|
Long |
getExpirationOverrideDuration()
Optional period of time in ms that will override any downloaded tile's expiration timestamp
|
long |
getGpsWaitTime()
default is 20 seconds
|
SimpleDateFormat |
getHttpHeaderDateTimeFormat() |
File |
getOsmdroidBasePath()
Base path for osmdroid files.
|
File |
getOsmdroidTileCache()
by default, maps to getOsmdroidBasePath() + "/tiles"
By default, it is defined in SD card, osmdroid directory.
|
short |
getTileDownloadMaxQueueSize() |
short |
getTileDownloadThreads()
number of tile download threads, conforming to OSM policy:
http://wiki.openstreetmap.org/wiki/Tile_usage_policy
default is 2
|
long |
getTileFileSystemCacheMaxBytes()
default is 600 Mb
|
long |
getTileFileSystemCacheTrimBytes()
When the cache size exceeds maxCacheSize, tiles will be automatically removed to reach this target.
|
short |
getTileFileSystemMaxQueueSize() |
short |
getTileFileSystemThreads()
used for both file system cache and the sqlite cache
|
String |
getUserAgentHttpHeader()
"User-Agent" is the default value and standard used throughout all http servers, unlikely to change
When calling @link
IConfigurationProvider.load(Context, SharedPreferences), it is set to
Context#getPackageName() which is defined your manifest file
made adjustable just in case
from OpenStreetMapTileProviderConstants |
String |
getUserAgentValue() |
boolean |
isDebugMapTileDownloader() |
boolean |
isDebugMapView()
Typically used to enable additional debugging
from
MapViewConstants |
boolean |
isDebugMode()
Typically used to enable additional debugging
from
OpenStreetMapTileProviderConstants |
boolean |
isDebugTileProviders()
Typically used to enable additional debugging
from
OpenStreetMapTileProviderConstants |
boolean |
isMapViewHardwareAccelerated()
default is false
|
void |
load(Context ctx,
SharedPreferences prefs)
loads the configuration from shared preferences, if the preferences defined in this file are not already
set, them they will be populated with defaults.
|
void |
save(Context ctx,
SharedPreferences prefs)
saves the current configuration to the shared preference location
|
void |
setCacheMapTileCount(short cacheMapTileCount) |
void |
setDebugMapTileDownloader(boolean debugMapTileDownloader) |
void |
setDebugMapView(boolean debugMapView) |
void |
setDebugMode(boolean debugMode) |
void |
setDebugTileProviders(boolean debugTileProviders) |
void |
setExpirationExtendedDuration(long period)
Optionally extends the amount of time that downloaded tiles remain in the cache beyond either the
server specified expiration time stamp or the default expiration time {
OpenStreetMapTileProviderConstants.DEFAULT_MAXIMUM_CACHED_FILE_AGE}
Note: this setting only controls tiles as they are downloaded. |
void |
setExpirationOverrideDuration(Long period)
Optional period of time in ms that will override any downloaded tile's expiration timestamp
|
void |
setGpsWaitTime(long gpsWaitTime)
The time we wait after the last gps location before using a non-gps location.
|
void |
setHttpHeaderDateTimeFormat(SimpleDateFormat httpHeaderDateTimeFormat) |
void |
setMapViewHardwareAccelerated(boolean mapViewHardwareAccelerated)
must be set before the mapview is created or inflated from a layout.
|
void |
setOsmdroidBasePath(File osmdroidBasePath)
Base path for osmdroid files.
|
void |
setOsmdroidTileCache(File osmdroidTileCache)
by default, maps to getOsmdroidBasePath() + "/tiles"
Sets the location where the tile cache is stored.
|
void |
setTileDownloadMaxQueueSize(short tileDownloadMaxQueueSize) |
void |
setTileDownloadThreads(short tileDownloadThreads) |
void |
setTileFileSystemCacheMaxBytes(long tileFileSystemCacheMaxBytes) |
void |
setTileFileSystemCacheTrimBytes(long tileFileSystemCacheTrimBytes) |
void |
setTileFileSystemMaxQueueSize(short tileFileSystemMaxQueueSize) |
void |
setTileFileSystemThreads(short tileFileSystemThreads)
used for both file system cache and the sqlite cache
|
void |
setUserAgentHttpHeader(String userAgentHttpHeader)
"User-Agent" is the default value and standard used throughout all http servers, unlikely to change
When calling @link
IConfigurationProvider.load(Context, SharedPreferences), it is set to
Context#getPackageName() which is defined your manifest file
made adjustable just in case
from OpenStreetMapTileProviderConstants |
void |
setUserAgentValue(String userAgentValue)
Enables you to override the default "osmdroid" value for HTTP user agents.
|
protected long gpsWaitTime
protected boolean debugMode
protected boolean debugMapView
protected boolean debugTileProviders
protected boolean debugMapTileDownloader
protected boolean isMapViewHardwareAccelerated
protected String userAgentValue
protected String userAgentHttpHeader
protected short cacheMapTileCount
protected short tileDownloadThreads
protected short tileFileSystemThreads
protected short tileDownloadMaxQueueSize
protected short tileFileSystemMaxQueueSize
protected long tileFileSystemCacheMaxBytes
protected long tileFileSystemCacheTrimBytes
protected SimpleDateFormat httpHeaderDateTimeFormat
protected File osmdroidBasePath
protected File osmdroidTileCache
protected long expirationAdder
protected Long expirationOverride
public long getGpsWaitTime()
getGpsWaitTime in interface IConfigurationProviderpublic void setGpsWaitTime(long gpsWaitTime)
IConfigurationProvidersetGpsWaitTime in interface IConfigurationProviderpublic boolean isDebugMode()
IConfigurationProviderOpenStreetMapTileProviderConstantsisDebugMode in interface IConfigurationProviderpublic void setDebugMode(boolean debugMode)
setDebugMode in interface IConfigurationProviderpublic boolean isDebugMapView()
IConfigurationProviderMapViewConstantsisDebugMapView in interface IConfigurationProviderpublic void setDebugMapView(boolean debugMapView)
setDebugMapView in interface IConfigurationProviderpublic boolean isDebugTileProviders()
IConfigurationProviderOpenStreetMapTileProviderConstantsisDebugTileProviders in interface IConfigurationProviderpublic void setDebugTileProviders(boolean debugTileProviders)
setDebugTileProviders in interface IConfigurationProviderpublic boolean isDebugMapTileDownloader()
isDebugMapTileDownloader in interface IConfigurationProviderpublic void setDebugMapTileDownloader(boolean debugMapTileDownloader)
setDebugMapTileDownloader in interface IConfigurationProviderpublic boolean isMapViewHardwareAccelerated()
IConfigurationProviderisMapViewHardwareAccelerated in interface IConfigurationProviderpublic void setMapViewHardwareAccelerated(boolean mapViewHardwareAccelerated)
IConfigurationProvidersetMapViewHardwareAccelerated in interface IConfigurationProviderPolygon,
Polyline,
OsmPathpublic String getUserAgentValue()
getUserAgentValue in interface IConfigurationProviderpublic void setUserAgentValue(String userAgentValue)
IConfigurationProviderOpenStreetMapTileProviderConstantssetUserAgentValue in interface IConfigurationProviderpublic short getCacheMapTileCount()
IConfigurationProviderLRUMapTileCache.ensureCapacity(int) The tile cache will always be at least 3x3.
from OpenStreetMapTileProviderConstants
used by MapTileCachegetCacheMapTileCount in interface IConfigurationProviderMapTileCachepublic void setCacheMapTileCount(short cacheMapTileCount)
setCacheMapTileCount in interface IConfigurationProviderpublic short getTileDownloadThreads()
IConfigurationProvidergetTileDownloadThreads in interface IConfigurationProviderpublic void setTileDownloadThreads(short tileDownloadThreads)
setTileDownloadThreads in interface IConfigurationProviderpublic short getTileFileSystemThreads()
IConfigurationProvidergetTileFileSystemThreads in interface IConfigurationProviderpublic void setTileFileSystemThreads(short tileFileSystemThreads)
IConfigurationProvidersetTileFileSystemThreads in interface IConfigurationProviderpublic short getTileDownloadMaxQueueSize()
getTileDownloadMaxQueueSize in interface IConfigurationProviderpublic void setTileDownloadMaxQueueSize(short tileDownloadMaxQueueSize)
setTileDownloadMaxQueueSize in interface IConfigurationProviderpublic short getTileFileSystemMaxQueueSize()
getTileFileSystemMaxQueueSize in interface IConfigurationProviderpublic void setTileFileSystemMaxQueueSize(short tileFileSystemMaxQueueSize)
setTileFileSystemMaxQueueSize in interface IConfigurationProviderpublic long getTileFileSystemCacheMaxBytes()
IConfigurationProvidergetTileFileSystemCacheMaxBytes in interface IConfigurationProviderpublic void setTileFileSystemCacheMaxBytes(long tileFileSystemCacheMaxBytes)
setTileFileSystemCacheMaxBytes in interface IConfigurationProviderpublic long getTileFileSystemCacheTrimBytes()
IConfigurationProvidergetTileFileSystemCacheTrimBytes in interface IConfigurationProviderpublic void setTileFileSystemCacheTrimBytes(long tileFileSystemCacheTrimBytes)
setTileFileSystemCacheTrimBytes in interface IConfigurationProviderpublic SimpleDateFormat getHttpHeaderDateTimeFormat()
getHttpHeaderDateTimeFormat in interface IConfigurationProviderpublic void setHttpHeaderDateTimeFormat(SimpleDateFormat httpHeaderDateTimeFormat)
setHttpHeaderDateTimeFormat in interface IConfigurationProviderpublic File getOsmdroidBasePath()
IConfigurationProvidergetOsmdroidBasePath in interface IConfigurationProviderpublic void setOsmdroidBasePath(File osmdroidBasePath)
IConfigurationProvidersetOsmdroidBasePath in interface IConfigurationProviderpublic File getOsmdroidTileCache()
IConfigurationProviderMapView}
is created. Changes made after it's creation (either pogrammatic or via layout inflator) have
no effect until the map is restarted or the MapView.setTileProvider(MapTileProviderBase)
is changed or recreated.
Note: basePath and tileCache directories can be changed independently
This has no effect on offline archives and can be changed independentlygetOsmdroidTileCache in interface IConfigurationProviderpublic void setOsmdroidTileCache(File osmdroidTileCache)
IConfigurationProviderMapView}
is created. Changes made after it's creation (either pogrammatic or via layout inflator) have
no effect until the map is restarted or the MapView.setTileProvider(MapTileProviderBase)
is changed or recreated.
This has no effect on offline archives and can be changed independentlysetOsmdroidTileCache in interface IConfigurationProviderpublic String getUserAgentHttpHeader()
IConfigurationProviderIConfigurationProvider.load(Context, SharedPreferences), it is set to
Context#getPackageName() which is defined your manifest file
made adjustable just in case
from OpenStreetMapTileProviderConstantsgetUserAgentHttpHeader in interface IConfigurationProviderpublic void setUserAgentHttpHeader(String userAgentHttpHeader)
IConfigurationProviderIConfigurationProvider.load(Context, SharedPreferences), it is set to
Context#getPackageName() which is defined your manifest file
made adjustable just in case
from OpenStreetMapTileProviderConstantssetUserAgentHttpHeader in interface IConfigurationProviderpublic void load(Context ctx,
SharedPreferences prefs)
IConfigurationProviderload in interface IConfigurationProviderpublic void save(Context ctx,
SharedPreferences prefs)
IConfigurationProvidersave in interface IConfigurationProviderpublic long getExpirationExtendedDuration()
IConfigurationProvidergetExpirationExtendedDuration in interface IConfigurationProviderpublic void setExpirationExtendedDuration(long period)
IConfigurationProviderOpenStreetMapTileProviderConstants.DEFAULT_MAXIMUM_CACHED_FILE_AGE}
Note: this setting only controls tiles as they are downloaded. tiles already in the cache are
not effected by this setting
Added as part of issue https://github.com/osmdroid/osmdroid/issues/490setExpirationExtendedDuration in interface IConfigurationProviderperiod - time in ms, if 0, no additional time to the 'server provided expiration' or the
'default expiration time' is added. If the value is less than 0, 0 will be usedpublic void setExpirationOverrideDuration(Long period)
IConfigurationProvidersetExpirationOverrideDuration in interface IConfigurationProviderperiod - if null, this setting is unset, server value + getExpirationExtendedDuration apply
if not null, this this value is usedpublic Long getExpirationOverrideDuration()
IConfigurationProvidergetExpirationOverrideDuration in interface IConfigurationProvider