Such-und display-Standorte auf MKMapView
Ich versuche einen Weg zu finden, nach einem Geschäft zu suchen, wie "Lebensmittelgeschäfte" und zeigt Sie auf einer google-Karte rund um die aktuelle Lage. Früher war dies ziemlich einfach, mit der alten URL im Stil der Lancierung der apple-Position auf der Karte aber ich kann nicht herausfinden, wie es zu tun mit die MKMapView. Ich verstehe, dass ich brauchen, um verwenden Sie die MKAnnotations Klassen, aber mein problem ist mit der Suche nach den Daten. Ich habe versucht einstecken in die URL unten, um zu bekommen die info von google, aber die Größe der Daten scheint auch so groß.
http://maps.google.com/maps?q=grocery&mrt=yp&sll=37.769561,-122.412844&z=14&output=kml
Gibt es einen einfachen Weg, um einfach nur eine Eigenschaft festlegen, der sagt, die MKMapView, um die Suche für keyword-und display-alle passenden Geschäft rund um meine aktuelle Position? Oder weiß jemand, wie man diese Informationen von google?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Die KML-Datei zurückgegeben, die Suche hat eine Menge von Informationen in es.
MKMapView
nicht über eine Möglichkeit zum Abfragen von Google, so haben Sie ein paar Möglichkeiten:Verwenden Sie die Daten, die Sie von der Abfrage mit
NSXMLParser
, und nur extrahieren Sie die Dinge, die Sie interessiert (wahrscheinlich Titel, Breite, Länge). KML ist nur eine version von XML.Blick durch die Google docs zu finden, einen Anruf, dass gibt mehr leichte Daten-format. Sie können das format ändern, in der Sie Ihre url json, aber die Informationen in es ist die gleiche.
Die Datei ist nur etwa 50 Kb groß obwohl. In meiner Erfahrung, herunterladen und analysieren einer 50KB XML-Datei dauert etwa 5 Sekunden über 3G.
Edit: Gerade hier gefunden, dachte, Sie könnten interessiert sein:
Hier: http://samsoff.es/post/iphone-plist-tutorial/
Können Sie bekommen, JSON-durch die änderung der request-string zu diesem:
http://maps.google.com/maps?q=grocery&mrt=yp&sll=37.769561,-122.412844&z=14&output=json
Noch Ein Edit
Hier ist eine andere JSON-Bibliothek namens Touch JSON. Ich habe diese verwendet, und es ist Recht einfach zu implementieren.
https://github.com/acf/TouchJSON
Anstatt mit den
maps?q=
string, es ist besser, das die offizielle API hier:http://code.google.com/apis/maps/documentation/geocoding/
JSON-Antworten der API die Arbeit mit dem JSON-Parser http://code.google.com/p/json-framework/ besser (die andere URL nicht mehr zurück konform JSON, und nicht eine standard-API, so dass es möglicherweise mehr geändert werden kann).