In my app I am using osmdroid for working with map. Map tiles are downloaded and kept in /storage/osmdroid. The application requires permissions WRITE_EXTERNAL_STORAGE and READ_EXTERNAL_STORAGE. If I deny access to storage, map is not shown. Is any way to show map without access to phone memory?
https://github.com/osmdroid/osmdroid/wiki/FAQ
Fresh off the wiki press. Yes you can change the location to application private storage, in which case it should work just fine. Pro tip: set these before loading any map views.
OpenStreetMapTileProviderConstants.setCachePath(...)
OpenStreetMapTileProviderConstants.setCacheSizes(...)
OpenStreetMapTileProviderConstants.setOfflineMapsPath(...)
OpenStreetMapTileProviderConstants.setUserAgentValue(...)
Update: Newer versions of osmdroid, starting in 5.6 and up use the following
Configuration.getInstance().setCachePath(...)
Configuration.getInstance().setCacheSizes(...)
Configuration.getInstance().setOfflineMapsPath(...)
Configuration.getInstance().setUserAgentValue(...)