Sto utilizzando l'API di Google Maps per Android v2 per la mia applicazione Android. Ci ho inizializzare GoogleMap come segue all'interno onCreateAccesso a GoogleMap dall'esterno del thread dell'interfaccia utente in Android
SupportMapFragment fm = (SupportMapFragment)getSupportFragmentManager().findFragmentById(R.id.map);
mGoogleMap = fm.getMap();
Nella mia applicazione, ho bisogno di fare alcune operazioni in background e sto usando AsybcTask per questo. Mentre procedi con le attività in background, voglio aggiornare la mappa. Si prega di fare riferimento al seguente campione.
@Override
protected Void doInBackground(Void...voids) {
while(Condition)
{
mGoogleMap.clear();
mGoogleMap.addMarker(marker);
Thread.sleep(5000);
}
}
So che non posso accedere direttamente ai componenti dell'interfaccia utente all'interno del metodo doInBackground. È possibile accedere a componenti dell'interfaccia utente comuni come pulsanti, edittexts e visualizzazioni di testo analizzando il contesto dell'applicazione nella classe AsyncTask. Ma non riesco a trovare un modo per accedere a GoogleMap dal metodo doInBackground. Potresti per favore darmi una soluzione.
Grazie. Funziona come un fascino. – ANJ
Meglio aggiungere Thread.sleep (5000) all'esterno di runOnUiThread (...) – ANJ