Es kann losgehen!

Bevor Sie mit der Entwicklung beginnen, lesen Sie bitte unsere Entwicklerdokumentation.

Die Google Places API for iOS aktivieren

Zum Einstieg führen wir Sie durch die Google Developers Console, wo Sie vorab Folgendes tun müssen:

  1. Ein Projekt erstellen oder auswählen
  2. Die Google Places API for iOS aktivieren
  3. Zugehörige Schlüssel erstellen
Weiter

Ort hinzufügen

Mit Google Places API for iOS können Sie einen Ort zur Datenbank „Google Places“ hinzufügen. Der neu hinzugefügte Ort ist nur Sekunden später in Ihrer App verfügbar und wird einer Moderationswarteschlange hinzugefügt, um eventuell in die Datenbank „Places“ von Google und in Google Maps aufgenommen zu werden.

Um die Chance zu erhöhen, dass der Ort durch den Moderationsprozess geführt wird und der Datenbank „Places“ von Google hinzugefügt wird, sollte die diesbezügliche Anfrage so viele Informationen wie möglich enthalten. Das sind insbesondere Adresse, Telefonnummer und Website.

  1. Ort hinzufügen
  2. Mehrere Orts-IDs und Orts-ID-Bereichsdefinitionen bearbeiten

Ort hinzufügen

Erstellen Sie das Objekt GMSUserAddedPlace, das Sie dann an GMSPlacesClient addPlace:callback: übergeben.

Schließen Sie die folgenden Informationen beim Erstellen von GMSUserAddedPlace mit ein:

  • Erforderlich: Vollständiger name des Unternehmens, der Sehenswürdigkeit oder eines anderen Orts in Textform. Die max. Länge beträgt 255 Zeichen.
  • Erforderlich: Die address des Orts in einer visuell lesbaren Form. Wenn ein Ort in einer richtig formatierten, lesbaren Form angegeben wird, steigt die Wahrscheinlichkeit, durch den Moderationsprozess weitergeleitet und in die Datenbank „Google Places“ aufgenommen zu werden.
  • Erforderlich: Das Objekt coordinate (CLLocationCoordinate2D), von der die Position des Orts angegeben wird.
  • Optional: Die phoneNumber des Orts. Die Telefonnummer muss im internationalen Format eingegeben werden. Das internationale Format umfasst die Ländervorwahl mit einem vorangestellten Pluszeichen (+). Beispiel: Die internationale Telefonnummer für den Google Firmensitz in Mountain View, USA, ist +1 650-253-0000. Wenn für einen Ort eine richtig formatierte Telefonnummer angegeben wird, steigt die Wahrscheinlichkeit, durch den Moderationsprozess weitergeleitet und in die Datenbank „Google Places“ aufgenommen zu werden. Hinweis: Sie müssen entweder phoneNumber oder website oder beides angeben.
  • Erforderlich: Eine Liste der Ortstypen, die diesen Ort beschreiben. Nur Tabellen des Typs 1 sind gültig.
  • Optional: Die URI website mit der Adresse der autoritativen Webseite für diesen Ort, wie beispielsweise die Homepage des Unternehmens. Wenn für einen Ort eine richtig formatierte Telefonnummer angegeben wird, steigt die Wahrscheinlichkeit, durch den Moderationsprozess weitergeleitet und in die Datenbank „Google Places“ aufgenommen zu werden. Hinweis: Sie müssen entweder phoneNumber oder website oder beides angeben.

Schließen Sie auch eine Callbackmethode mit ein, um die Ergebnisse handhaben zu können. Die API ruft die angegebene Callbackmethode auf, die das sich ergebende Objekt GMSPlace für den neu erstellten Ort übergibt.

Der folgende Beispielcode fügt einen Ort namens „Google Shoes!“ zu Pyrmont, Australien, zur Datenbank hinzu.

Swift

let userAddedPlace = GMSUserAddedPlace()
userAddedPlace.name = "Google Shoes!"
userAddedPlace.address = "48 Pirrama Road, Pyrmont, NSW 2009, Australia"
userAddedPlace.coordinate = CLLocationCoordinate2DMake(-33.8669710, 151.1958750)
userAddedPlace.phoneNumber = "(02) 9374 4000"
userAddedPlace.website = "http://www.google.com.au/"
userAddedPlace.types = ["shoe_store"]
placesClient.add(userAddedPlace, callback: { (place, error) -> Void in
  if let error = error {
    print("Add Place error: \(error.localizedDescription)")
    return
  }

  if let place = place {
    print("Added place with placeID \(place.placeID)")
    print("Added Place name \(place.name)")
    print("Added Place address \(place.formattedAddress)")
  }
})

Objective-C

GMSUserAddedPlace *userAddedPlace = [[GMSUserAddedPlace alloc] init];
userAddedPlace.name = @"Google Shoes!";
userAddedPlace.address = @"48 Pirrama Road, Pyrmont, NSW 2009, Australia";
userAddedPlace.coordinate = CLLocationCoordinate2DMake(-33.8669710, 151.1958750);
userAddedPlace.phoneNumber = @"(02) 9374 4000";
userAddedPlace.website = @"http://www.google.com.au/";
userAddedPlace.types = @[@"shoe_store"];

[_placesClient addPlace:userAddedPlace callback:^(GMSPlace *place, NSError *error) {
  if (error != nil) {
    NSLog(@"User Added Place error %@", [error localizedDescription]);
    return;
  }

  NSLog(@"Added place with placeID %@", place.placeID);
  NSLog(@"Added Place name %@", place.name);
  NSLog(@"Added Place address %@", place.formattedAddress);
}];

Das sich ergebende Objekt GMSPlace hat eine eindeutige Orts-ID, die Ihre App unverzüglich zum Anfordern der Ortsdetails verwenden kann. Hinzugefügte Orte sind außerdem nach kurzer Zeit in den Ergebnissen der von Ihrer App initiierten Anforderungen vom Typ get-current-place sowie in einer durch Ihre App angezeigten Ortsauswahl verfügbar. Bereichsdefinitionen sind abhängig von der Projekt-ID, die für das Generieren Ihres API-Schlüssels verwendet wird.

Neu hinzugefügte Orte durchlaufen eine Moderationswarteschlange zur Entscheidung, ob sie in die Datenbank „Google Places“ aufgenommen werden. Orte, die den Moderationsprozess nicht bestehen, können Sie weiterhin über die Orts-ID in der einreichenden App abrufen. Diese Orte werden aber nicht mehr in den Ergebnissen der Anforderungen „get-current-places“, in der API-Auswahl oder mit irgendeiner anderen API-Methode angezeigt. Orte, die den Moderationsprozess durchlaufen, sind in allen Apps und in Google Maps sichtbar.

Mehrere Orts-IDs und Orts-ID-Bereichsdefinitionen bearbeiten

Jede Orts-ID kann nur auf einen Ort verweisen, ein Ort kann jedoch mehrere Orts-IDs aufweisen. Mehrere Orts-IDs für einen Ort kommen meist dann vor, wenn Sie einen Ort hinzugefügt haben, der bereichsmäßig ursprünglich für Ihre App definiert war und dann eine Google-weite Bereichsdefinition erhält.

Sobald Sie einen Ort hinzufügen, erhalten Sie unverzüglich eine Orts-ID für den neuen Ort. Die Orts-ID ist bereichsmäßig nur für Ihre App definiert. Der Ort durchläuft eine Moderationswarteschlange zur Entscheidung, ob er in die Datenbank „Google Places“ aufgenommen wird. Wird der Ort bestätigt, erhält er eine neue Orts-ID, die in allen Apps und in Google Maps sichtbar ist.

Wenn Sie einen Ort per Eingabe einer Orts-ID anfordern, werden Sie mit Sicherheit immer denselben Ort (sofern noch bestehend) in der Antwort erhalten.

Beachten Sie jedoch, dass die Antwort eine Orts-ID enthalten kann, die von der in Ihrer Anforderung abweicht. Weitere Informationen finden Sie unter Orts-ID Übersicht.

Feedback geben zu...

location_on
Google Places API for iOS