Après avoir activé la facturation et créé une clé API, vous pouvez configurer Xcode projet que vous utilisez pour développer votre application.
Des notes de version sont disponibles pour chaque version.
Étape 1 : Installez le logiciel requis
Pour créer un projet à l'aide du SDK Maps pour iOS, vous devez télécharger et installer:
- Xcode version 15.0 ou ultérieure
Étape 2: Créez le projet Xcode et installez le SDK Maps pour iOS
Gestionnaire de paquets Swift
Le SDK Maps pour iOS peut être installé via <ph type="x-smartling-placeholder"></ph> Gestionnaire de paquets Swift. Pour ajouter le SDK, assurez-vous d'avoir supprimé toutes les dépendances existantes du SDK Maps pour iOS.
Pour ajouter le SDK à un projet nouveau ou existant, procédez comme suit:
-
Ouvrez votre Xcode
project
ouworkspace
, puis accédez à File > (Fichier >) Ajouter des dépendances de packages - Saisissez https://github.com/googlemaps/ios-maps-sdk comme URL, puis appuyez sur Entrée. pour extraire le package et cliquez sur « Ajouter un package ».
-
Pour installer un
version
spécifique, définissez le champ Règle de dépendance sur l'une des les options basées sur les versions. Pour les nouveaux projets, nous vous recommandons de spécifier la dernière version et à l'aide de la colonne "Version exacte", . Une fois l'opération terminée, cliquez sur "Ajouter un package". -
Dans la fenêtre Choose Package Products (Choisir les produits du package), vérifiez
GoogleMaps
(pour les versions antérieures à 9.0.0, vérifiezGoogleMaps
,GoogleMapsBase
etGoogleMapsCore
) seront ajoutées à votre ciblemain
désignée. Une fois l'opération terminée, cliquez sur "Ajouter un package". -
Pour vérifier votre installation, accédez au volet
General
de votre cible. Les packages installés devraient s'afficher dans Cadres, bibliothèques et contenu intégré. Vous pouvez également afficher les "Dépendances des packages" de la section "Navigateur de projets" pour vérifier le package et sa version.
Pour mettre à jour le package
pour un projet existant, procédez comme suit:
Si vous effectuez la mise à niveau à partir d'une version antérieure à la version 9.0.0,vous devez supprimer les dépendances suivantes:
GoogleMapsBase
,GoogleMapsCore
etGoogleMapsM4B
après la mise à niveau. Ne supprimez pas la dépendance pourGoogleMaps
Pour en savoir plus, consultez les Notes de version de la version 9.0.0Dans les paramètres de configuration de votre projet Xcode, recherchez Frameworks, Libraries, and Embedded Content (Frameworks, bibliothèques et contenu intégré). Utilisez le signe moins (-) pour supprimer le framework suivant :
GoogleMapsBase
(uniquement pour les mises à niveau à partir de versions antérieures à 9.0.0)GoogleMapsCore
(uniquement pour les mises à niveau à partir de versions antérieures à 9.0.0)GoogleMapsM4B
(uniquement pour les mises à niveau à partir de versions antérieures à la version 9.0.0)
- Dans Xcode, accédez à Fichier > Packages > Update To Latest Package Versions" (Mise à jour vers les dernières versions du package).
- Pour vérifier votre installation, accédez à la section Package Dependencies (Dépendances des packages) du Project Navigator (Navigateur de projets). pour vérifier le package et sa version.
Pour supprimer les dépendances existantes du SDK Maps pour iOS ajoutées à l'aide de
CocoaPods
, procédez comme suit:
- Fermez votre espace de travail Xcode. Ouvrez le terminal et exécutez la commande suivante:
sudo gem install cocoapods-deintegrate cocoapods-clean pod deintegrate pod cache clean --all
-
Supprimez
Podfile
,Podfile.resolved
et les Xcodeworkspace
si vous ne les utilisez pas pour d'autres produits que CocoaPods.
-
Dans les paramètres de configuration de votre projet Xcode, recherchez Frameworks, Bibliothèques,
et les contenus intégrés. Utilisez le signe moins(-) pour supprimer le framework suivant:
<ph type="x-smartling-placeholder">
- </ph>
GoogleMaps
GoogleMapsBase
(uniquement pour les installations) antérieures à la version 9.0.0)GoogleMapsCore
(uniquement pour les installations) antérieures à la version 9.0.0)GoogleMapsM4B
(uniquement pour les installations) antérieures à la version 9.0.0)
-
Dans le répertoire de premier niveau de votre projet Xcode, supprimez
GoogleMaps
. d'un bundle.
CocoaPods
Le SDK Maps pour iOS est disponible en tant que pod CocoaPods. CocoaPods est un gestionnaire de dépendances Open Source pour les projets Cocoa Swift et Objective-C.
Si vous ne possédez pas encore l'outil CocoaPods, installez-le sur macOS en exécutant la commande ci-dessous à partir du terminal. Pour plus de détails, consultez le guide de démarrage de CocoaPods.
sudo gem install cocoapods
Créez un Podfile
pour le SDK Maps pour iOS, et utilisez-le pour installer l'API et ses dépendances :
- Si vous n'avez pas encore de projet Xcode, créez-en un et enregistrez-le sur votre machine locale. Si vous débutez dans le développement iOS:
- Créez un projet.
- Sélectionnez iOS > Application.
- Sur l'écran des options du projet:
- Saisissez le nom du projet dans le champ Project Name (Nom du projet).
- Notez la valeur du champ ID du bundle. Vous pouvez utiliser cette valeur pour restreindre votre clé API ci-dessous.
- Définissez l'interface du projet sur Storyboard.
- Définissez le paramètre Language (Langue) sur Swift ou Objective-C.
- Créez un fichier nommé
Podfile
dans le répertoire de votre projet. Ce fichier définit les dépendances de votre projet. - Modifiez
Podfile
et ajoutez vos dépendances avec leurs versions. Voici un exemple qui inclut la dépendance dont vous avez besoin pour le SDK Maps pour iOS : Veillez à exécuter régulièrementsource '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
pour détecter la présence d'une nouvelle afin d'être toujours à jour. Si nécessaire, passez à la dernière version. - Enregistrez le
Podfile
. Ouvrez un terminal et accédez au répertoire contenant le fichier
Podfile
:cd <path-to-project>
Exécutez la commande
pod install
. Cela installera les API spécifiées dans lePodfile
, ainsi que toutes les éventuelles dépendances.pod install
Fermez Xcode, puis ouvrez (double-cliquez) le fichier
.xcworkspace
de votre projet pour lancer Xcode. À partir de ce moment, vous devez utiliser le fichier.xcworkspace
pour ouvrir le projet.
Pour mettre à jour l'API pour un projet existant, procédez comme suit:
- Ouvrez un terminal et accédez au répertoire du projet contenant
Podfile
. - Exécutez la commande
pod update
. Cela mettra à jour toutes les API spécifié dansPodfile
à la dernière version.
Installation manuelle
Ce guide explique comment ajouter manuellement les XCFrameworks contenant le SDK Maps pour iOS à votre projet et configurer vos paramètres de compilation dans Xcode. Un XCFramework est un paquet binaire que vous pouvez utiliser sur plusieurs plates-formes, y compris des machines utilisant le silicon d'Apple.- Téléchargez les fichiers de ressources et les binaires du SDK suivants:
- Extrayez les fichiers pour accéder aux XCFrameworks et aux ressources.
- Si vous n'avez pas encore de projet Xcode, créez-en un maintenant et enregistrez-le dans
sur votre ordinateur local. Si vous débutez dans le développement iOS:
- Créez un projet.
- Sélectionnez iOS > Application.
- Sur l'écran des options du projet:
- Saisissez le nom du projet dans le champ Project Name (Nom du projet).
- Notez la valeur du champ ID du bundle. Vous pouvez utiliser cette valeur pour restreindre votre clé API ci-dessous.
- Définissez l'interface du projet sur Storyboard.
- Définissez Language (Langage) sur Swift ou Objective-C.
-
Ouvrez l'onglet Général. Faites glisser les XCFrameworks suivants dans votre projet
sous Cadres, bibliothèques et contenu intégré. Veillez à sélectionner Do Not Embed (Ne pas intégrer) pour chaque XCFramework :
GoogleMaps.xcframework
GoogleMapsBase.xcframework
GoogleMapsCore.xcframework
-
Copiez l'élément
GoogleMaps.bundle
à partir de GoogleMapsResources. que vous avez téléchargé dans le répertoire de premier niveau de votre projet Xcode. Veillez à sélectionner Copy items into destination group's folder (Copier les éléments dans le dossier du groupe de destination) lorsque vous y êtes invité. - Sélectionnez votre projet dans le navigateur de projets, puis choisissez votre cible de votre application.
-
Ouvrez l'onglet Build Phases (Phases de compilation) pour la cible de votre application.
Dans Link Binary with libraries (Lier un binaire avec des bibliothèques), ajoutez ce qui suit :
frameworks et bibliothèques:
<ph type="x-smartling-placeholder">
- </ph>
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
(uniquement si vous utilisez OpenGL)QuartzCore.framework
SystemConfiguration.framework
UIKit.framework
-
Choisissez votre projet plutôt qu'une cible spécifique, et ouvrez l'onglet Build Settings (Paramètres de compilation). Dans la section Linking - General -> Other Linker Flags (Association - Général - Autres options de l'éditeur de liens), ajoutez
-ObjC
à "Debug" (Débogage) et "Release" (Version). Si ces ne sont pas visibles, modifiez le filtre dans la barre Build Settings (Paramètres de compilation). de Basic à All. -
Pour installer le XCFramework du SDK Places pour iOS, consultez Premiers pas avec le SDK Places pour iOS.
Étape 3: Inspectez le fichier manifeste de confidentialité Apple
Apple exige des informations sur la confidentialité des applications sur l'App Store. Pour obtenir des mises à jour et d'autres informations, consultez la page Informations sur la confidentialité sur l'App Store d'Apple.
Le fichier manifeste de confidentialité Apple est inclus dans le bundle de ressources pour le SDK. Pour vérifier que le fichier manifeste de confidentialité a été inclus et pour inspecter son contenu, créez une archive de votre application et générez un rapport sur la confidentialité à partir de cette archive.
Étape 4 : Ajoutez votre clé API au projet
Dans Obtenir une clé API, vous avez généré une clé API pour votre application. Ajoutez-la maintenant à votre projet Xcode.
Dans les exemples suivants, remplacez YOUR_API_KEY
par votre clé API.
Swift
Ajoutez votre clé API à votre fichier AppDelegate.swift
comme suit :
- Ajoutez la déclaration d'importation suivante :
import GoogleMaps
- Ajoutez les éléments suivants à votre
application(_:didFinishLaunchingWithOptions:)
à l'aide de votre clé API:GMSServices.provideAPIKey("YOUR_API_KEY")
- Si vous utilisez également l'API Places, ajoutez à nouveau votre clé comme indiqué ci-dessous :
GMSPlacesClient.provideAPIKey("YOUR_API_KEY")
Objective-C
Ajoutez votre clé API à votre fichier AppDelegate.m
comme suit :
- Ajoutez la déclaration d'importation suivante :
@import GoogleMaps;
- Ajoutez les éléments suivants à votre
application:didFinishLaunchingWithOptions:
à l'aide de votre clé API:[GMSServices provideAPIKey:@"YOUR_API_KEY"];
- Si vous utilisez également l'API Places, ajoutez à nouveau votre clé comme indiqué ci-dessous :
[GMSPlacesClient provideAPIKey:@"YOUR_API_KEY"];
Étape 5 : Ajoutez une carte
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
Étape 5 (facultative): Déclarez les schémas d'URL utilisés par l'API
À partir d'iOS 9 et Xcode 7, les applications peuvent déclarer les schémas d'URL qu'elles
que vous souhaitez ouvrir, en spécifiant les schémas dans le fichier Info.plist
de l'application. La
Le SDK Maps pour iOS ouvre l'application mobile Google Maps lorsque l'utilisateur clique sur
le logo Google sur la carte, ce qui permet à votre application de déclarer l'URL pertinente
systèmes.
Pour déclarer les schémas d'URL utilisés par le SDK Maps pour iOS, ajoutez l'élément
les lignes suivantes à votre Info.plist
:
La capture d'écran ci-dessous montre la configuration dans l'interface utilisateur Xcode :
Sans la déclaration ci-dessus, les erreurs suivantes peuvent se produire lorsque l'utilisateur appuie sur le logo Google sur la carte:
- -canOpenURL : échec pour l'URL "comgooglemaps://" - erreur: "Cette application n'est pas autorisé à effectuer une requête pour le schéma comgooglemaps"
- -canOpenURL: échec pour l'URL : "googlechromes://" - erreur: "Cette application n'est pas autorisé à lancer une requête pour les schémas googlechromes"
Pour éliminer ces erreurs, ajoutez la déclaration à votre Info.plist
.
Étape suivante
Maintenant que vous disposez d'une clé API et d'un projet Xcode, vous pouvez créer et exécuter des applications. Le SDK Navigation pour iOS fournit de nombreux tutoriels et applications exemples qui peuvent vous aider pour commencer. Pour en savoir plus, consultez les pages suivantes :