2015-11-27 11 views
5

Sto provando a creare un pulsante per avviare Google Maps su un dispositivo e aprirlo a un luogo specifico [non solo un lat/lon, anche se questo è il fallback].Geo: intent con un placeid

Ho un ID luogo, e voglio lanciare un geo: intento al posto. Non riesco a trovare la struttura uri di cui ho bisogno per farlo - qualche idea?

risposta

2

So che questa domanda è obsoleta, ma è ancora un problema attuale, che non è fino ad oggi non implementato da Google. Non esiste un URI diretto per questo, ma l'ho risolto tramite il parametro q. Per prima cosa mando il nome del luogo e poi l'indirizzo. Per me funziona abbastanza bene.

Uri gmmIntentUri = Uri.parse("geo:0,0?q=" + place.getName() + ", " + place.getAddress()); 
Intent mapIntent = new Intent(Intent.ACTION_VIEW, gmmIntentUri); 
mapIntent.setPackage("com.google.android.apps.maps"); 
startActivity(mapIntent); 

Se non si dispone l'indirizzo e il nome, è possibile cercare questo tramite il Places API Webservice.

+0

Questa è la migliore risposta finora, quindi, lo sto marcando. – Namingwaysway

+0

@Namingwaysway Grazie mille! –