WorldMap is a simple Android app that displays a map of the world taken from Wikimedia (http://upload.wikimedia.org/wikipedia/commons/3/33/Physical_Political_World_Map.jpg), and allows the user to scroll around on it.
The map itself is quite large (6480,3888), so it's way too big to fit in memory all at once (6480 x 3888 x 32 / 8) = 100,776,960 -- over 96 megs. The VM heap size Android supports is eith 16 or 24 megs, so we can't fit the whole thing in memory at once.
So WorldMap uses the BitmapRegionDecoder API (available as of API 10) to decode just what it needs to display.
WorldMap is open source, and the source code is here:https://github.com/johnnylambada/WorldMapWorld Map è una semplice applicazione per Android che consente di visualizzare una mappa del mondo preso da Wikimedia (http://upload.wikimedia.org/wikipedia/commons/3/33/Physical_Political_World_Map.jpg), e permette all'utente di scorrere su di esso.
La mappa in sé è abbastanza grande (6480,3888), quindi è troppo grande per la memoria in una sola volta (6480 x 3888 x 32/8) = 100.776.960 - oltre 96 mega. La VM heap size Android supporta è eith 16 o 24 mega, quindi non può andare bene il tutto in memoria in una sola volta.
Così WorldMap utilizza l'API BitmapRegionDecoder (disponibile a partire da 10 API) per decodificare solo ciò di cui ha bisogno per visualizzare.
World Map è open source, e il codice sorgente è qui:https://github.com/johnnylambada/WorldMap