iOS için Yerler SDK'sı, mevcut Yer Ayrıntıları'nı destekler. Mevcut iOS için Yerler SDK'sını biliyorsanız Yer Ayrıntıları'nın yeni sürümünde aşağıdaki değişiklikler yapılmıştır:
Yeni bir fiyatlandırma modeli kullanır. Tüm API'ler için fiyatlandırma bilgileri için iOS için Yerler SDK'sı (Yeni) fiyatlandırması başlıklı makaleyi inceleyin.
Alan maskelemesi gereklidir. Yanıtta döndürülmesini istediğiniz alanları belirtmeniz gerekir. Döndürülen alanların varsayılan listesi yoktur. Bu listeyi atlarsanız yöntemler hata döndürür.
İstekte bulunmak için yeni
GMSPlacesClient fetchPlaceWithRequest:
yöntemini çağırın.İsteğe iletin:
Yer kimliği ve oturum jetonu gibi tüm istek parametrelerini tanımlayan yeni
GMSFetchPlaceRequest
sınıfının bir örneği.Yanıtı işlemek için
GMSPlaceResultCallback
türündeki bir geri çağırma işlevi.
Yanıt, yerle ilgili ayrıntıları içeren bir
GMSPlace
örneği içerir.GMSPlace
örneğinintypes
mülkünde yer alan değerler artık Tablo A ve Tablo B ile tanımlanmaktadır.Yanıt
GMSPlace
örneği,GMSPlaceReview
türündeki yenireviews
mülkünü içerir. Uygulamanız,GMSPlace
örneğinden alınan fotoğraf ve yorumlar gibi bilgileri görüntülerken gerekli ilişkilendirmeleri de görüntülemelidir.Daha fazla bilgi için ilişkilendirmeler hakkındaki dokümanları inceleyin.
Yanıt
GMSPlace
örneği aşağıdaki üye işlevlerini içerir:isOpen
bir yerin belirli bir zamanda 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)'ni etkinleştirdiğinizde bu özellikler 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 istek gönderir ve tüm parametreleri GMSFetchPlaceRequest
örneğine 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ılı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); } }];