النقل إلى تفاصيل المكان (جديد)

تدعم حزمة تطوير البرامج للأماكن لأجهزة iOS الإصدار الحالي تفاصيل المكان إذا كنت على دراية بحزمة تطوير البرامج للأماكن الحالية لنظام التشغيل iOS، النسخة الجديدة من "تفاصيل المكان" إجراء التغييرات التالية:

  • تستخدم نموذج أسعار جديدًا. للحصول على معلومات حول الأسعار لجميع واجهات برمجة التطبيقات، راجع الأسعار لحزمة تطوير برامج الأماكن لأجهزة iOS (جديدة).

  • يجب إخفاء الحقل. يجب تحديد الحقول التي تريد عرضها. في الرد. لا تتوفّر قائمة تلقائية للحقول التي تم إرجاعها. في حال حذف بطاقة هذه القائمة، فستُرجع الطرق خطأ.

  • لتقديم طلب، يُرجى الاتصال بالرقم الجديد GMSPlacesClient fetchPlaceWithRequest: .

  • الانتقال إلى الطلب:

    • مثال على التغيير الجديد GMSFetchPlaceRequest فئة تحدد جميع معلمات الطلب، مثل معرف المكان الجلسة.

    • نوع معاودة الاتصال GMSPlaceResultCallback للتعامل مع الرد.

  • يحتوي الرد على GMSPlace مثال تحتوي على تفاصيل حول المكان. القيم في types يتم الآن تحديد خاصية المثيل GMSPlace بواسطة الجدول أ الجدول ب.

  • يحتوي مثيل الرد "GMSPlace" على النسخة الجديدة من "reviews" من النوع GMSPlaceReview. عندما يعرض تطبيقك معلومات تمّ الحصول عليها من "GMSPlace" مثل الصور والمراجعات، يجب أن يعرض التطبيق أيضًا تلقائيًا.

    لمزيد من المعلومات، راجع الوثائق المتعلقة الإحالة.

  • يحتوي مثيل الردّ GMSPlace على الدوال الفرعية التالية:

    • isOpen لحساب ما إذا كان المكان مفتوحًا في وقت معين.

    • isOpenAtDate لحساب ما إذا كان المكان مفتوحًا في تاريخ معين.

    لا تتوفر هذه الدوال إلا عند تفعيل حزمة تطوير برامج الأماكن لنظام التشغيل iOS لا تكون متاحة عند تفعيل حزمة تطوير البرامج للأماكن لنظام التشغيل iOS (جديد) لمزيد من المعلومات يُرجى الاطّلاع على مقالة اختيار إصدار حزمة SDK.

مثال على الطلب

باستخدام تفاصيل المكان (جديد)، يمكنك تقديم طلب لتمرير جميع المعلمات في المثيل GMSFetchPlaceRequest. هذا النمط في المثال أيضًا قناع حقل، بحيث لا تشتمل الاستجابة إلا على الاسم المعروض وعنوان URL للموقع الإلكتروني الخاص بالمكان:

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);
  }
}];