Yer Ayrıntılarına Taşı (Yeni)

iOS için Yerler SDK'sı, Yer Ayrıntıları (Eski)'nı destekler. iOS için Yerler SDK'sını (Eski) kullanıyorsanız Yer Ayrıntıları (Yeni) aşağıdaki değişiklikleri yapar:

  • Yeni bir fiyatlandırma modeli kullanır. Tüm API'lerin fiyatlandırma bilgileri için iOS için Yerler SDK'sı (Yeni) Fiyatlandırması başlıklı makaleyi inceleyin.

  • Alan maskeleme gereklidir. Yanıtta hangi alanların döndürülmesini istediğinizi belirtmeniz gerekir. Döndürülen alanların varsayılan bir listesi yoktur. Bu listeyi atlarsanız yöntemler hata döndürür.

  • İstek göndermek için yeni GMSPlacesClient fetchPlaceWithRequest: yöntemini çağırın.

  • İsteğe iletme:

  • Yanıtta, yerle ilgili ayrıntıların yer aldığı bir GMSPlace örneği bulunur. GMSPlace örneğinin types özelliğindeki değerler artık A Tablosu ve B Tablosu ile tanımlanıyor.

  • Yanıt GMSPlace örneği, GMSPlaceReview türünde yeni bir reviews özelliği içeriyor. Uygulamanız, GMSPlace örneğinden alınan bilgileri (ör. fotoğraflar ve yorumlar) gösterdiğinde gerekli atıfları da göstermelidir.

    Daha fazla bilgi için ilişkilendirmeler hakkındaki belgelere göz atın.

  • Yanıt GMSPlace örneği aşağıdaki üye işlevlerini içerir:

    • isOpen Bir yerin belirtilen saatte açık olup olmadığını hesaplar.

    • isOpenAtDate Bir yerin belirli bir tarihte açık olup olmadığını hesaplar.

    Bu işlevler yalnızca iOS için Yerler SDK'sını etkinleştirdiğinizde kullanılabilir. iOS için Yerler SDK'sı (Yeni)'nı etkinleştirdiğinizde kullanılamaz. Daha fazla bilgi için SDK sürümünüzü seçme başlıklı makaleyi inceleyin.

Örnek istek

Yer Ayrıntıları (Yeni) ile bir istekte bulunup GMSFetchPlaceRequest örneğindeki tüm parametreleri iletirsiniz. Bu örnekte, yanıtın yalnızca yerin görünen adını ve web sitesi URL'sini içermesi için alan maskesi de kullanılmaktadır:

Swift

// A hotel in Saigon with an attribution.
let placeID = "ChIJV4k8_9UodTERU5KXbkYpSYs"

// Specify the place data types to return.
let fields = [GMSPlaceProperty.name, GMSPlaceProperty.website].map {$0.rawValue}

// Create the GMSFetchPlaceRequest instance.
let fetchPlaceRequest = GMSFetchPlaceRequest(placeID: placeID, placeProperties: fields, sessionToken: nil)

client.fetchPlaceWithRequest(fetchPlaceRequest: fetchPlaceRequest, callback: {
  (place: GMSPlace?, error: Error?) in
  guard let place, error == nil else { return }
  print("Place found: \(String(describing: place.name))")
})

Objective-C

// A hotel in Saigon with an attribution.
NSString *placeID = @"ChIJV4k8_9UodTERU5KXbkYpSYs";

// Specify the place data types to return.
NSArray<NSString *> *fields = @[GMSPlacePropertyName, GMSPlacePropertyWebsite];

// Create the GMSFetchPlaceRequest instance.
GMSFetchPlaceRequest *fetchPlaceRequest = [[GMSFetchPlaceRequest alloc] initWithPlaceID:placeID placeProperties: fields sessionToken:nil];

[placesClient fetchPlaceWithRequest: fetchPlaceRequest callback: ^(GMSPlace *_Nullable place, NSError *_Nullable error) {
    if (error != nil) {
      NSLog(@"An error occurred %@", [error localizedDescription]);
      return;
    } else {
    NSLog(@"Place Found: %@", place.name);
    NSLog(@"The place URL: %@", place.website);
  }
}];