البدء

اختيار النظام الأساسي: Android‏ iOS‏ JavaScript‏

اتّبِع الخطوات التالية لإعداد ميزة "التصميم المستند إلى البيانات" لمجموعات البيانات.

الحصول على مفتاح واجهة برمجة تطبيقات وتفعيل واجهات برمجة التطبيقات

قبل استخدام ميزة "التصميم المستند إلى البيانات" لمجموعات البيانات، يجب أن يكون لديك: مشروع على السحابة الإلكترونية يتضمّن حساب فوترة، وأن تكون كلّ من "حزمة تطوير البرامج بالاستناد إلى بيانات خرائط Google للتطبيقات المتوافقة مع iOS" و"واجهة برمجة التطبيقات لمجموعات بيانات الخرائط" مفعّلتَين. لمزيد من المعلومات، يُرجى الاطّلاع على:

إنشاء معرّف خريطة

معرّف الخريطة هو معرّف فريد يمثّل مواصفات "خرائط Google". يمكنك إنشاء معرّفات خرائط وتعديل نمط مرتبط بمعرّف خريطة في أي وقت في Google Cloud Console.

لقطة شاشة من Google Cloud
console

إنشاء نمط خريطة جديد

لإنشاء نمط خريطة جديد، اتّبِع التعليمات الواردة في مقالة إنشاء أنماط الخرائط واستخدامها لإنشاء النمط. بعد الانتهاء، اربط النمط بمعرّف الخريطة الذي تم إنشاؤه حديثًا.

تعديل رمز إعداد الخريطة

تتطلّب هذه الخطوة ربط معرّف خريطة بنمط تم تفعيل طبقة عناصر واحدة أو أكثر فيه. للتحقّق من إعداد معرّف الخريطة بشكل صحيح في Cloud Console، راجِع كيفية ضبطه ضمن إدارة الخرائط.

Swift

// A map ID using a style with one or more feature layers enabled

let mapID = GMSMapID(identifier: "YOUR_MAP_ID")
let camera = GMSCameraPosition(latitude: 40, longitude: -80, zoom: 7)
let options = GMSMapViewOptions()
options.camera = camera
options.mapID = mapID
let mapView = GMSMapView(options: options)

Objective-C

// A map ID using a style with one or more feature layers enabled

GMSMapID *mapID = [GMSMapID mapIDWithIdentifier:@"MAP_ID"];
GMSCameraPosition *camera = [GMSCameraPosition cameraWithLatitude:40 longitude:-80 zoom:7];
GMSMapViewOptions *options = [[GMSMapViewOptions alloc] init];
options.camera = camera;
options.mapID = mapID;
GMSMapView *mapView = [[GMSMapView alloc] initWithOptions:options];

التحقّق من إمكانات الخريطة

يتطلّب التصميم المستند إلى البيانات لمجموعات البيانات توفّر إمكانات يتم تفعيلها في وحدة تحكّم Google Cloud، وتكون مرتبطة برقم تعريف خريطة. بما أنّ معرّفات الخرائط عرضة للتغيير، يمكنك استدعاء mapView.mapCapabilities على GMSMapView للتحقّق من توفّر إمكانية معيّنة (مثل التصميم المستند إلى البيانات) قبل استدعائها.

يمكنك أيضًا رصد التغييرات في إمكانات الخريطة من خلال الاشتراك في GMSViewDelegate. يوضّح هذا المثال كيفية استخدام البروتوكول للتحقّق من متطلبات التصميم المستند إلى البيانات.

Swift

class SampleViewController: UIViewController {

  private lazy var mapView: GMSMapView = {
    let options = GMSMapViewOptions()
    options.mapID = GMSMapID(identifier: "YOUR_MAP_ID")
    options.camera = GMSCameraPosition(latitude: 40, longitude: -80, zoom: 7)
    return GMSMapView(options: options)
  }()

  override func loadView() {
    self.view = mapView
    mapView.delegate = self
  }
}

extension SampleViewController: GMSMapViewDelegate {
  func mapView(_ mapView: GMSMapView, didChange mapCapabilities: GMSMapCapabilityFlags) {
    if (!mapCapabilities.contains(.dataDrivenStyling)) {
      // Data-driven styling is *not* available, add a fallback.
      // Existing feature layers are also unavailable.
    }
  }
}

Objective-C

@interface SampleViewController: UIViewController <GMSMapViewDelegate>
@end

@implementation SampleViewController
- (void)loadView {
  GMSCameraPosition *camera = [GMSCameraPosition cameraWithLatitude:40 longitude:-80 zoom:7];
  GMSMapViewOptions *options = [[GMSMapViewOptions alloc] init];
  options.camera = camera;
  options.mapID = [GMSMapID mapIDWithIdentifier:@"MAP_ID"];
  GMSMapView *mapView = [[GMSMapView alloc] initWithOptions:options];
  mapView.delegate = self;
  self.view = mapView;
}

- (void)mapView:(GMSMapView *)mapView didChangeMapCapabilities:(GMSMapCapabilityFlags)mapCapabilities {
  if (!(mapCapabilities & GMSMapCapabilityFlagsDataDrivenStyling)) {
    // Data-driven styling is *not* available, add a fallback.
    // Existing feature layers are also unavailable.
  }
}
@end

الخطوات التالية