1

Ich habe eine App, die das Google Places-API durchsucht und Orte basierend auf den von mir ausgewählten Kategorien zurückgibt.Wie erstelle ich eine URL zur Abfrage von Google-Orten mit der CID

Das Ergebnis ist ein JSON-Objekt, das viele Daten zu jedem Ort enthält. Ich möchte diesen Ort per E-Mail mit anderen teilen. Ich extrahieren Sie die Informationen, die ich von diesem Objekt über den angegebenen Ort wollen, indem Sie den folgenden Code:

JSONObject geometry = (JSONObject) point.get("geometry"); 
JSONObject location = (JSONObject) geometry.get("location"); 
result.setLatitude((Double) location.get("lat")); 
result.setLongitude((Double) location.get("lng")); 
result.setIcon(point.getString("icon"));    
result.setName(point.getString("name")); 
result.setVicinity(point.getString("vicinity")); 
result.setId(point.getString("place_id")); 
return result; 

Die place_id die CID des Ortes ist, die an den Ort einzigartig ist. Ich möchte dies teilen oder in der Lage sein, diesen Ort zu zeigen, indem Sie zu Google Maps gehen und nach dieser einzigartigen CID suchen. Ich konstruiere die URL Web-Browser wie folgt:

http://maps.google.com/maps/place?cid=ChIJgzzEJr9_24ARNu3LoImy7k4 

Dies allerdings nicht funktioniert, und die Web-Adresse wird in eine lat/long umgewandelt, aber keinen Platz zeigt hier.

Gibt es eine einfache Möglichkeit, einen Ort auf einer Google Map mit dieser eindeutigen CID zu finden? Etwas wie eine URL, die ich mit anderen in einer E-Mail oder etwas teilen kann? Wenn ich also einen coolen Ort finde und ihn teilen möchte, kann ich die URL mit dieser CID einfach weitergeben?

Antwort

1

Ihre "CID" ist Platz id

https://maps.googleapis.com/maps/api/place/details/json?key=YOURKEY&placeid=ChIJgzzEJr9_24ARNu3LoImy7k4

Verwendung dieser Link können Sie json erhalten, die für dieses Unternehmen alle Informationen enthalten, schauen die Unterseite dieser json

"url" : "https://maps.google.com/?cid=5687679683593497910", 

Das ist die WAHRE CID!

+0

Wie haben Sie die "wahre" CID-Nummer bekommen? Ich erhalte bereits Informationen über den Ort, wenn ich die Places API abfrage. Sollten diese Daten nicht bereits in dem von der ersten Abfrage zurückgegebenen JSON-Objekt enthalten sein? –

+0

Sie könnten CID mit Platz api bekommen, die "CID" auf Ihrem Code ist die Ort-ID, die für Platz api verwendet werden kann, dann könnten Sie diese Ort-ID JSON abfragen, wenn Sie bereits das Ergebnis Formular Ort API für Javascript erhalten , könnten Sie versuchen, etwas wie result.url –

+0

Ich bekomme bereits die CID mit der API über die place_id. Sollte sich diese "wahre" CID nicht irgendwo im JSON-Objekt befinden? Ich schaue jetzt und die Daten zeigen folgendes: –

Verwandte Themen