Depois de ativar o faturamento e criar uma chave de API, configure o Xcode projeto que você usa para desenvolver seu app.
As notas da versão estão disponíveis para cada lançamento.
Etapa 1: instalar o software necessário
Para criar um projeto usando o SDK do Maps para iOS, faça o download e instale:
- Xcode versão 15.0 ou mais recente
Etapa 2: criar o projeto Xcode e instalar o SDK do Maps para iOS
Gerenciador de pacotes do Swift
O SDK do Maps para iOS pode ser instalado via Gerenciador de pacotes do Swift (em inglês). Para adicionar o SDK, verifique se você tem removeu todas as dependências atuais do SDK do Maps para iOS.
Para adicionar o SDK a um projeto novo ou existente, siga estas etapas:
-
Abra seu Xcode
project
ouworkspace
e acesse File > Adicionar dependências de pacote. - Insira https://github.com/googlemaps/ios-maps-sdk como o URL e pressione Enter para extrair o pacote e clicar em "Adicionar pacote".
-
Para instalar um
version
específico, defina o campo Regra de dependência como um dos as opções baseadas em versão. Para novos projetos, recomendamos especificar a versão mais recente e usando a "versão exata" é a melhor opção. Quando terminar, clique em "Adicionar pacote". -
Na janela Choose Package Products, verifique se
GoogleMaps
. Para versões anteriores à 9.0.0, verifiqueGoogleMaps
,GoogleMapsBase
eGoogleMapsCore
) será adicionado a seu destinomain
designado. Quando terminar, clique em "Adicionar pacote". -
Para verificar sua instalação, navegue até o painel
General
do destino. Em Frameworks, bibliotecas e conteúdo incorporado, você verá os pacotes instalados. Também é possível consultar a página "Package Dependencies" do "Navegador do projeto" para verificar o pacote e sua versão.
Para atualizar o package
de um projeto existente, siga estas etapas:
Se você estiver fazendo upgrade de uma versão anterior à 9.0.0, será necessário remover das seguintes dependências:
GoogleMapsBase
,GoogleMapsCore
eGoogleMapsM4B
após o upgrade. Não remova a dependência deGoogleMaps
: Para mais informações, consulte a Notas de lançamento da versão 9.0.0.Nas configurações do seu projeto do Xcode, localize Frameworks, bibliotecas, e conteúdo incorporado. Use o sinal de menos(-) para remover o seguinte framework:
GoogleMapsBase
(apenas para upgrades de versões anteriores à 9.0.0)GoogleMapsCore
(apenas para upgrades de versões anteriores à 9.0.0)GoogleMapsM4B
(apenas para upgrades de versões anteriores à 9.0.0)
- No Xcode, acesse "File > Pacotes > Atualize para as versões mais recentes do pacote".
- Para verificar a instalação, vá para a seção Package Dependencies do Project Navigator para verificar o pacote e sua versão.
Para remover as dependências atuais do SDK do Maps para iOS adicionadas usando
CocoaPods
, siga estas etapas:
- Feche seu espaço de trabalho do Xcode. Abra o terminal e execute o seguinte comando:
sudo gem install cocoapods-deintegrate cocoapods-clean pod deintegrate pod cache clean --all
-
Remova
Podfile
,Podfile.resolved
e Xcodeworkspace
, se você não estiver usando para algo diferente do CocoaPods.
-
Nas configurações do seu projeto do Xcode, localize Frameworks, bibliotecas,
e conteúdo incorporado. Use o sinal de menos(-) para remover o seguinte framework:
GoogleMaps
GoogleMapsBase
(apenas para instalações) anterior à versão 9.0.0)GoogleMapsCore
(apenas para instalações) anterior à versão 9.0.0)GoogleMapsM4B
(apenas para instalações) anterior à versão 9.0.0)
-
No diretório de nível superior do seu projeto Xcode, remova o
GoogleMaps
feixe.
CocoaPods
O SDK do Maps para iOS está disponível como um pod do CocoaPods (em inglês). O CocoaPods é um gerenciador de dependências de código aberto para projetos Cocoa em Swift e Objective-C.
Se você ainda não tem essa ferramenta, instale-a no macOS executando o seguinte comando no terminal. Para saber mais, consulte o Guia de primeiros passos do CocoaPods (em inglês).
sudo gem install cocoapods
Crie um Podfile
para o SDK do Maps para iOS e instale a API e as dependências dela:
- Se você ainda não tiver um projeto Xcode, crie um agora e salve-o em
na máquina local. Se você é novo no desenvolvimento para iOS:
- Crie um novo projeto.
- Selecione a guia iOS > App.
- Na tela de opções do projeto:
- Digite o Nome do projeto.
- Registre o valor do campo Identificador do pacote. Use esse valor para restringir sua chave de API abaixo.
- Defina a Interface do projeto como Storyboard.
- Defina a linguagem como Swift ou Objective-C.
- Crie um arquivo chamado
Podfile
no seu diretório do projeto para definir as dependências. - Edite o
Podfile
e adicione suas dependências com as versões. Aqui está um exemplo que inclui a dependência necessária para o SDK do Maps para iOS: Executesource 'https://github.com/CocoaPods/Specs.git' platform :ios, '15.0' target 'YOUR_APPLICATION_TARGET_NAME_HERE' do pod 'GoogleMaps', '8.4.0' end
pod outdated
regularmente para detectar quando há uma versão mais recente. para garantir que esteja sempre com a versão mais recente. Se necessário, faça upgrade para a versão mais recente. - Salve o
Podfile
. Abra um terminal e acesse o diretório que contém o
Podfile
:cd <path-to-project>
Execute o comando
pod install
. Isso instalará as APIs especificadas noPodfile
e as respectivas dependências.pod install
Feche o Xcode e clique duas vezes no arquivo
.xcworkspace
do projeto para iniciar o programa. Depois disso, é preciso usar o arquivo.xcworkspace
para abrir o projeto.
Para atualizar a API de um projeto atual, siga estas etapas:
- Abra um terminal e acesse o diretório do projeto que contém o
Podfile
. - Execute o comando
pod update
. Isso vai atualizar todas as APIs especificado emPodfile
para a versão mais recente.
Instalação manual
Este guia mostra como adicionar manualmente os XCFrameworks que contêm o SDK do Maps para iOS ao seu projeto e definir as configurações de compilação no Xcode. Um XCFramework é um pacote binário que pode ser usado em várias plataformas, incluindo máquinas que usam o Apple Silicon.- Faça o download dos seguintes arquivos binários e de recursos do SDK:
- GoogleMaps
- GoogleMapsBase
- GoogleMapsCore
- GoogleMapsM4B (link em inglês)
- GoogleMapsResources
- Extraia os arquivos para acessar os XCFrameworks e os recursos.
- Se você ainda não tiver um projeto Xcode, crie um agora e salve-o em
na máquina local. Se você é novo no desenvolvimento para iOS:
- Crie um novo projeto.
- Selecione a guia iOS > App.
- Na tela de opções do projeto:
- Digite o Nome do projeto.
- Registre o valor do campo Identificador do pacote. Use esse valor para restringir sua chave de API abaixo.
- Defina a Interface do projeto como Storyboard.
- Defina a linguagem como Swift ou Objective-C.
-
Abra a guia Geral. Arraste os seguintes XCFrameworks para o seu projeto
em Estruturas, Bibliotecas e Conteúdo Incorporado. Confirme se
para selecionar Do Not Embed para cada XCFramework:
GoogleMaps.xcframework
GoogleMapsBase.xcframework
GoogleMapsCore.xcframework
-
Copie o
GoogleMaps.bundle
do GoogleMapsResources. do qual você fez o download para o diretório de nível superior do seu projeto Xcode. Não se esqueça de selecionar Copie os itens para a pasta do grupo de destino quando solicitado. - Selecione seu projeto no Project Navigator e escolha seu de destino do aplicativo.
-
Abra a guia Fases de compilação do destino do aplicativo.
Em Vincular binário com bibliotecas, adicione o seguinte:
frameworks e bibliotecas:
Accelerate.framework
Contacts.framework
CoreData.framework
CoreGraphics.framework
CoreImage.framework
CoreLocation.framework
CoreTelephony.framework
CoreText.framework
GLKit.framework
ImageIO.framework
libc++.tbd
libz.tbd
Metal.framework
OpenGLES.framework
(somente se você estiver usando o OpenGL)QuartzCore.framework
SystemConfiguration.framework
UIKit.framework
-
Escolha seu projeto, em vez de um destino específico, e abra o Guia Configurações da versão. Na janela Vinculação - Geral -> Outro vinculador Seção "Flags", adicione
-ObjC
a "Debug". e em "Liberar". Se essas configurações não estiverem visíveis, altere o filtro na barra Configurações da versão de Básico para Todos. -
Para instalar o XCFramework do SDK do Places para iOS, consulte Vamos começar com o SDK do Places para iOS.
Etapa 3: inspecionar o arquivo do Manifesto de privacidade da Apple
A Apple exige detalhes de privacidade de apps na App Store. Acesse a página de detalhes de privacidade da App Store da Apple para atualizações e mais informações.
O arquivo do Manifesto de privacidade da Apple está incluído no pacote de recursos do SDK. Para verificar se o arquivo do manifesto de privacidade foi incluído e inspecionar o conteúdo dele, crie um arquivo do seu app e gere um relatório de privacidade.
Etapa 4: adicionar sua chave de API ao projeto
Em Gerar uma chave de API, faça o seguinte: gerou uma chave de API para seu app. Agora adicione essa chave ao seu projeto Xcode.
Nos exemplos a seguir, substitua YOUR_API_KEY
pela chave de API.
Swift
Inclua sua chave de API ao AppDelegate.swift
da seguinte maneira:
- Adicione esta declaração import:
import GoogleMaps
- Adicione o seguinte ao seu
application(_:didFinishLaunchingWithOptions:)
com sua chave de API:GMSServices.provideAPIKey("YOUR_API_KEY")
- Se você também estiver usando a API Places, adicione a chave novamente da seguinte maneira:
GMSPlacesClient.provideAPIKey("YOUR_API_KEY")
Objective-C
Inclua sua chave de API ao AppDelegate.m
da seguinte maneira:
- Adicione esta declaração import:
@import GoogleMaps;
- Adicione o seguinte ao seu
application:didFinishLaunchingWithOptions:
com sua chave de API:[GMSServices provideAPIKey:@"YOUR_API_KEY"];
- Se você também estiver usando a API Places, adicione a chave novamente da seguinte maneira:
[GMSPlacesClient provideAPIKey:@"YOUR_API_KEY"];
Etapa 5: adicionar um mapa
Swift
import UIKit import GoogleMaps class ViewController: UIViewController { override func viewDidLoad() { super.viewDidLoad() // Do any additional setup after loading the view. // Create a GMSCameraPosition that tells the map to display the // coordinate -33.86,151.20 at zoom level 6. let options = GMSMapViewOptions() options.camera = GMSCameraPosition.camera(withLatitude: -33.86, longitude: 151.20, zoom: 6.0) options.frame = self.view.bounds let mapView = GMSMapView(options: options) self.view.addSubview(mapView) // Creates a marker in the center of the map. let marker = GMSMarker() marker.position = CLLocationCoordinate2D(latitude: -33.86, longitude: 151.20) marker.title = "Sydney" marker.snippet = "Australia" marker.map = mapView } }
Objective-C
#import "ViewController.h" #import <GoogleMaps/GoogleMaps.h> @interface ViewController() @end @implementation ViewController - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view. // Create a GMSCameraPosition that tells the map to display the // coordinate -33.86,151.20 at zoom level 6. GMSMapViewOptions *options = [[GMSMapViewOptions alloc] init]; options.camera = [GMSCameraPosition cameraWithLatitude:-33.8683 longitude:151.2086 zoom:6]; options.frame = self.view.bounds; GMSMapView *mapView = [[GMSMapView alloc] initWithOptions:options]; [self.view addSubview:mapView]; // Creates a marker in the center of the map. GMSMarker *marker = [[GMSMarker alloc] init]; marker.position = CLLocationCoordinate2DMake(-33.86, 151.20); marker.title = @"Sydney"; marker.snippet = @"Australia"; marker.map = mapView; } @end
Etapa 5 (opcional): declarar os esquemas de URL usados pela API
A partir do iOS 9 e do Xcode 7, os aplicativos podem declarar os esquemas de URL que
pretende abrir, especificando os esquemas no arquivo Info.plist
do app. A
O SDK do Maps para iOS abre o app Google Maps para dispositivos móveis quando o usuário clica nele.
o logotipo do Google no mapa e, portanto, seu app pode declarar o URL relevante
esquemas.
Para declarar os esquemas de URL usados pelo SDK do Maps para iOS, adicione o
seguintes linhas ao seu Info.plist
:
A captura de tela abaixo mostra a configuração na interface do usuário do Xcode:
Sem a declaração acima, os seguintes erros podem ocorrer quando o usuário toca o logotipo do Google no mapa:
- -canOpenURL: falha para o URL: "comgooglemaps://" - error: "Este aplicativo não está com permissão para consultar o esquema comgooglemaps"
- -canOpenURL: falha para o URL: "googlechromes://" - error: "Este aplicativo não está com permissão para consultar o esquema googlechromes"
Para eliminar esses erros, adicione a declaração ao Info.plist
.
A seguir
Agora que você tem uma chave de API e um projeto Xcode, já pode criar e executar apps. O SDK do Navigation para iOS oferece muitos tutoriais e aplicativos de exemplo que podem ajudar você começar. Confira mais detalhes em: