2013-02-10 17 views
12

Sono un novizio per Open Street Map. Ho fatto delle ricerche e ho scoperto che possiamo scaricare e archiviare la mappa in una cartella. Ma non ho trovato alcun tutorial o esempio che fornisca Open Street Map offline. Qualcuno può fornire un tutorial passo-passo, una guida per implementare la mappa stradale aperta offline per favore. Sto seguendo questo esempio http://android-coding.blogspot.com/2012/06/example-of-implementing-openstreetmap.html ma ora voglio renderlo disponibile quando non c'è connessione.Open Street Map funziona offline android

risposta

6

Come nel tutorial menzionate è possibile utilizzare libreria osmdroid: https://code.google.com/p/osmdroid/

C'è una buona spiegazione di come funziona con linea osmdroid mappe qui: https://stackoverflow.com/a/8286276/891479

Uso MapTileProviderBasic nella vostra app. Alcuni esempi qui: http://www.androidadb.com/class/ma/MapTileProviderBasic.html

per generare le mappe offline in uso formato osmdroid mobile Atlas Creator: http://mobac.sourceforge.net/

È possibile scegliere la fonte delle mappe e il formato di output. Una volta generato, inserisci l'atlante delle mappe in formato zip nella directory "/ osmdroid/map".

Spero che possa essere d'aiuto!

+0

Hi @resus, ... ho appena scoperto che Google Earth/Maps opzioni sono state rimosse dalle funzioni Creator mobile Atlas? Se è così ... come posso creare la mappa della mia area che supporta la lettura di osmdroid? – gumuruh

+0

Probabilmente le mappe di Google non sono presenti per motivi di licenza, è possibile utilizzare le fonti di mappe di openstreet per le mappe offline. –

4

Ho trovato questo tutorial che spiega tutte le cose che ti servono passo dopo passo.

In breve:

1- È necessario scaricare piastrelle mappa utilizzando Mobile Atlas Creator. Ho spiegato i passaggi HERE

2- Spostare il file zip risultante in/mnt/sdcard/osmdroid/sul dispositivo.

3- Aggiunta osmdroid-android-XXX.jar e slf4j-android-1.5.8.jar nel percorso di generazione progetto

4- Aggiunta MapView: È possibile aggiungere un MapView al layout xml

<org.osmdroid.views.MapView 
    android:id="@+id/mapview" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    tilesource="Mapnik" 
    /> 

O creare un MapView di programmazione:

@Override 
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) 
{ 
    mResourceProxy = new ResourceProxyImpl(inflater.getContext().getApplicationContext()); 
    mMapView = new MapView(inflater.getContext(), 256, mResourceProxy); 
    return mMapView; 
} 

Hope it Helps;)

+0

Mobile Atlas Creator è bloccato ora. cosa fare adesso –

0

MOBAC (Mobile Atlas Creator) è bloccato ora per l'utilizzo di OSM Si può vedere here