Começar

Siga estas etapas para configurar o estilo baseado em dados para conjuntos de dados.

Gerar uma chave de API e ativar APIs

Antes de usar o estilo baseado em dados para conjuntos de dados, você precisa ter: do Google Cloud com uma conta de faturamento SDK do Maps para iOS e API Maps Datasets ativado. Para saber mais, veja:

Criar um ID do mapa

Um mapID é um identificador exclusivo que representa uma única instância de um mapa do Google. Você pode criar IDs de mapas e atualizar um estilo associadas a um ID de mapa a qualquer momento no console do Google Cloud.

Uma captura de tela do Google Cloud
console

Criar um estilo de mapa

Para criar um novo estilo de mapa, siga as instruções em Gerenciar mapa estilos para criar o estilo. Quando terminar, associe o estilo ao ID do mapa recém-criado.

Atualizar o código de inicialização do seu mapa

Esta etapa exige que um ID do mapa seja associado a um estilo com um ou mais elementos camadas ativadas. Para verificar se o ID do mapa está configurado corretamente em Console do Cloud, analise como ele está configurado em Maps de configuração.

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

Verificar recursos do mapa

O estilo baseado em dados para conjuntos de dados exige recursos que são ativados na Console do Google Cloud e associado a um ID de mapa. Como os IDs de mapa estão sujeitos à mudar, você pode chamar mapView.mapCapabilities em uma GMSMapView para verificar se um determinado recurso (por exemplo, estilo baseado em dados) está disponíveis antes de chamá-lo.

Você também pode detectar alterações nos recursos do mapa se inscrevendo em GMSViewDelegate Este exemplo mostra como usar o protocolo para verificar o estilo baseado em dados e cumprimento de requisitos regulatórios.

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óximas etapas