Comenzar

Sigue estos pasos para configurar el diseño basado en datos aplicable a conjuntos de datos.

Obtén una clave de API y habilita las APIs

Antes de usar el diseño basado en datos aplicable a conjuntos de datos, debes tener lo siguiente: de Google Cloud con una cuenta de facturación, y SDK de Maps para iOS y API de Maps Datasets habilitado. Para obtener más información, consulta:

Crea un ID de mapa

Un mapID es un identificador único que representa una sola instancia de un mapa de Google. Puedes crear los IDs de mapa y actualizar un diseño asociados a un ID de mapa en cualquier momento en la consola de Google Cloud.

Una captura de pantalla de Google Cloud
consola

Crea un nuevo diseño de mapa

Para crear un nuevo diseño de mapa, sigue las instrucciones que se indican en Cómo administrar el mapa estilos para crear el estilo. Cuando termines, asocia el diseño con el ID de mapa que acabas de crear.

Actualiza el código de inicialización del mapa

Este paso requiere que se asocie un ID de mapa con un diseño que tenga uno o más componentes. capas habilitadas. Para verificar que tu ID de mapa esté configurado correctamente en en la consola de Cloud, revisa cómo se configura en Maps. Administración.

Swift

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

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

Objective-C

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

GMSMapID *mapID = [GMSMapID mapIDWithIdentifier:@"MAP_ID"];
GMSMapView *mapView = [GMSMapView mapWithFrame:CGRectZero mapID:mapID camera:[GMSCameraPosition cameraWithLatitude:40 longitude:-80 zoom:7]];

Verifica las funciones de un mapa

El diseño basado en datos aplicable a conjuntos de datos requiere capacidades habilitadas en la la consola de Google Cloud y asociada a un ID de mapa. Dado que los IDs de mapa están sujetos a cambio, puedes llamar mapView.mapCapabilities en un GMSMapView para verificar si se cumple una función determinada (por ejemplo, el diseño basado en datos) disponible antes de llamarlo.

Para detectar cambios en las capacidades de los mapas, suscríbete a GMSViewDelegate En este ejemplo, se muestra cómo usar el protocolo para verificar el estilo basado en datos y los requisitos de cumplimiento.

Swift

class SampleViewController: UIViewController {

  private lazy var mapView: GMSMapView = GMSMapView(frame: .zero, mapID: GMSMapID(identifier: "YOUR_MAP_ID"), camera: GMSCameraPosition(latitude: 40, longitude: -80, zoom: 7))

  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 {
  GMSMapView *mapView = [GMSMapView mapWithFrame:CGRectZero mapID:[GMSMapID mapIDWithIdentifier:@"MAP_ID"] camera:[GMSCameraPosition cameraWithLatitude:40 longitude:-80 zoom:7]];
  mapView.delegete = 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

Próximos pasos