Auf dieser Seite wird beschrieben, wie Sie die Dienstprogrammbibliothek für das Maps SDK for iOS einrichten.
Sie haben folgende Möglichkeiten, diese Dienstprogramme auszuprobieren:
- Installieren Sie die Demo-App und führen Sie sie aus. Die Demo-App ist ein eigenständiges Projekt, das den gesamten Code zum Testen der Dienstprogramme enthält.
- Installieren Sie die Dienstprogrammbibliothek in einem vorhandenen Xcode-Projekt. Fügen Sie diese Dienstprogramme Ihrem eigenen Projekt hinzu.
Optional CocoaPods installieren
Die Dienstprogrammbibliothek ist als CocoaPods-Pod namens Google-Maps-iOS-Utils
verfügbar. CocoaPods ist ein Open-Source-Abhängigkeitsmanager für Swift- und Objective-C-Cocoa-Projekte.
Wenn Sie das CocoaPods-Tool noch nicht haben, installieren Sie es unter macOS, indem Sie den folgenden Befehl über das Terminal ausführen:
sudo gem install cocoapods
Weitere Informationen findest du im CocoaPods-Startleitfaden.
Demo-App installieren und ausführen
Die Dienstprogrammbibliothek enthält eine Demo-App, die Sie installieren und dann jedes Dienstprogramm ausprobieren können.
Installieren Sie die Demo-App mit einer der folgenden beiden Methoden:Dateien aus GitHub verwenden
- Laden Sie das Codebeispiel-Beispielarchiv von GitHub herunter und entpacken Sie das Archiv.
- Öffnen Sie ein Terminalfenster und gehen Sie zu dem Verzeichnis, in dem Sie die Beispieldateien maximiert haben. Öffnen Sie das entsprechende Beispielverzeichnis für die gewünschte Sprache:
- Führen Sie
cd google-maps-ios-utils-master/samples/SwiftDemoApp
für Swift aus - Führen Sie für Ziel-C
cd google-maps-ios-utils-master/samples/ObjCDemoApp
aus
- Führen Sie
- Führen Sie den folgenden Befehl aus:
pod install
- Schließen Sie Xcode und öffnen Sie per Doppelklick die Datei
.xcworkspace
Ihres Projekts, um Xcode zu starten. Ab jetzt musst du die Datei.xcworkspace
verwenden, um das Projekt zu öffnen.
CocoaPods v1.6.1 verwenden
- Öffnen Sie ein Terminalfenster und installieren Sie Version 1.6.1:
sudo gem install cocoapods -v1.6.1
- Google Maps-Dateien mit CocoaPods abrufen:
pod try Google-Maps-iOS-Utils
Wählen Sie bei entsprechender Aufforderung entweder „Swift“ oder „Objective-C“ aus. CocoaPods aktualisiert Ihre Spezifikations-Repositories und öffnet dann die Demo in einem temporären Xcode-Projekt mit dem Namen
SwiftDemoApp.xcodeproj
oderObjCDemoApp.xcodeproj
.
API-Schlüssel in der Demo-App hinzufügen
Unter API-Schlüssel abrufen generieren Sie einen API-Schlüssel für Ihre App. Fügen Sie diesen Schlüssel dann im Xcode-Projekt für die Demo-App hinzu.Swift
Füge deinen API-Schlüssel folgendermaßen in AppDelegate.swift
ein:
- Fügen Sie die folgende Importanweisung hinzu:
import GoogleMaps
- Fügen Sie in der folgenden Zeile den API-Schlüssel zwischen den doppelten Anführungszeichen hinzu:
// Change this key to a valid key registered with the demo app bundle id. let mapsAPIKey = ""
Objective-C
Füge deinen API-Schlüssel folgendermaßen in AppDelegate.m
ein:
- Fügen Sie die folgende Importanweisung hinzu:
@import GoogleMaps;
- Fügen Sie in der folgenden Zeile den API-Schlüssel zwischen den doppelten Anführungszeichen hinzu:
// Change this key to a valid key registered with the demo app bundle id. static NSString *const kMapsAPIKey = @"";
Demo-App erstellen und ausführen
Nachdem Sie den API-Schlüssel hinzugefügt haben, erstellen Sie das Projekt und führen es aus:
- Wenn Sie die Swift-Version der Demo ausführen, können Sie auswählen, welches Dienstprogramm in der App angezeigt werden soll.
- Wenn Sie die Objective-C-Version der Demo ausführen, sehen Sie die Demo des Markierungs-Clustering-Dienstprogramms. Sie können dann die Objective-C-Version der Demo bearbeiten, um die einzelnen Dienstprogramme auszuprobieren. Weitere Informationen finden Sie unten im Abschnitt Dienstprogramm zu Ihrer App hinzufügen.
Hilfsprogrammbibliothek als Xcode-Projekt installieren
Gehen Sie wie folgt vor, um die Hilfsprogrammbibliothek Ihrem Xcode-Arbeitsbereich hinzuzufügen:
Mit CocoaPods
- Wenn Sie noch kein Xcode-Projekt haben, erstellen Sie es jetzt und speichern Sie es auf Ihrem lokalen Computer. Wenn Sie mit der iOS-Entwicklung noch nicht vertraut sind, erstellen Sie eine Single View Application.
- Wenn Sie noch keine Pod-Datei für Ihr Projekt haben, erstellen Sie in Ihrem Projektverzeichnis eine Datei mit dem Namen
Podfile
. Diese Datei definiert die Abhängigkeiten Ihres Projekts. - Bearbeiten Sie die Pod-Datei Ihres Projekts und fügen Sie eine Abhängigkeit vom Pod
Google-Maps-iOS-Utils
hinzu. Hier siehst du ein Beispiel für die Abhängigkeiten, die du für das Maps SDK for iOS und die Dienstprogrammbibliothek benötigst:source 'https://github.com/CocoaPods/Specs.git' platform :ios, '10.0' target 'YOUR_APPLICATION_TARGET_NAME_HERE' do use_frameworks! pod 'GoogleMaps', '4.0.0' pod 'Google-Maps-iOS-Utils', '3.4.0' end
- Führen Sie
pod install
aus. - Schließen Sie Xcode und öffnen Sie per Doppelklick die Datei
.xcworkspace
Ihres Projekts, um Xcode zu starten. Ab jetzt musst du die Datei.xcworkspace
verwenden, um das Projekt zu öffnen.
Hinweis: Das Markierungs-Clustering-Dienstprogramm hängt vom Quadtree ab, aber du kannst das Quadtree ohne Markierungscluster verwenden. Wenn Sie nur das Quadtree-Dienstprogramm verwenden möchten, können Sie in der Pod-Datei pod 'Google-Maps-iOS-Utils'
zu 'Google-Maps-iOS-Utils/QuadTree'
ändern.
Karthago verwenden
- Installieren Sie Karthago. Es gibt mehrere Methoden. Eine genaue Anleitung findest du in der Readme-Datei für Karthago.
- Falls du noch kein Xcode-Projekt hast, erstelle eines und speichere es auf dem lokalen Rechner. (Falls du noch keine Erfahrung in der iOS-Entwicklung hast, erstelle ein neues Projekt und wähle die Vorlage für iOS-Apps aus. In Xcode 11.7 oder einer früheren Version musst du eine Single View Application (App mit Einzelansicht) einrichten.
- Erstelle in deinem Projektverzeichnis eine Datei mit dem Namen
Cartfile
. Diese Datei definiert die Abhängigkeiten Ihres Projekts. - Bearbeiten Sie die
Cartfile
und fügen Sie die Maps SDK for iOS-Dienstprogrammbibliothek hinzu:
github "googlemaps/google-maps-ios-utils"
- Speichere die
Cartfile
. - Wechseln Sie in einem Terminalfenster zum Verzeichnis, das
Cartfile
enthält:
cd <path-to-project>
- Führen Sie den Befehl „update“ aus:
carthage update --platform iOS
Dadurch werden die inCartfile
angegebenen APIs zusammen mit allen Abhängigkeiten installiert. - Gehen Sie im Finder in Ihrem Projektverzeichnis zu den heruntergeladenen Framework-Dateien unter
Carthage/Build/iOS
. - Fügen Sie das Maps SDK for iOS-Framework in Ihr Projekt ein. Ziehen Sie dazu die folgenden Bundles in Ihr Projekt.
Wenn Sie dazu aufgefordert werden, wählen Sie bei Bedarf Elemente kopieren, verwenden Sie bitte die gleiche Version wie oben aus.
GoogleMaps-x.x.x/Base/Frameworks/GoogleMapsBase.framework
GoogleMaps-x.x.x/Maps/Frameworks/GoogleMaps.framework
GoogleMaps-x.x.x/Maps/Frameworks/GoogleMapsCore.framework
GoogleMaps-x.x.x/Maps/Frameworks/GoogleMapsUtils.framework
GoogleMaps-x.x.x/M4B/Frameworks/GoogleMapsM4B.framework
angeben. - Klicke in deinem Projekt mit der rechten Maustaste auf
GoogleMaps.framework
und wähle Show In Finder (In Finder zeigen) aus. - Ziehen Sie
Carthage/Build/iOS/GoogleMaps.framework/Resources/GoogleMaps.bundle
aus dem OrdnerResources
in Ihr Projekt. Prüfe, wenn du dazu aufgefordert wirst, ob Copy items into destination group's folder (Elemente in Ordner der Zielgruppe kopieren) ausgewählt ist. Das sollte nicht der Fall sein. - Wähle im Project Navigator dein Projekt aus und gib dann das Ziel deiner App an.
- Öffnen Sie den Tab Build Phases (Build-Phasen) für das Ziel Ihrer Anwendung und fügen Sie unter Link Binary with Libraries (Binärdatei mit Bibliotheken verknüpfen) die folgenden Frameworks hinzu:
Accelerate.framework
CoreData.framework
CoreGraphics.framework
CoreImage.framework
CoreLocation.framework
CoreTelephony.framework
CoreText.framework
GLKit.framework
ImageIO.framework
libc++.tbd
libz.tbd
OpenGLES.framework
QuartzCore.framework
SystemConfiguration.framework
UIKit.framework
Wähle statt eines bestimmten Ziels dein Projekt aus und öffne den Tab Build Settings (Build-Einstellungen). Gib im Bereich Other Linker Flags (Weitere Verknüpfungsmerker) den Code
-ObjC
ein. Falls die Einstellungen nicht angezeigt werden, filtere in der Leiste Build Settings nicht mehr nach Basic (Standard), sondern nach All (Alle).
Swift-Paketmanager verwenden
- Wenn Sie noch kein Xcode-Projekt haben, erstellen Sie eines und speichern Sie es auf Ihrem lokalen Computer. (Falls Sie noch keine Erfahrung mit der iOS-Entwicklung haben, erstellen Sie ein neues Projekt und wählen Sie die Vorlage für iOS-Apps aus. Unter Xcode 11.7 oder älter müssen Sie eine Single View Application erstellen.
- Maps SDK for iOS als Abhängigkeit hinzufügen Weitere Informationen finden Sie unter SDK installieren.
- Gehen Sie in Ihrem Xcode-Projekt zu File -> Swift Packages -> Add Package Dependency.
- Geben Sie im angezeigten Fenster die Repository-URL des Maps SDK for iOS-Dienstprogramms ein
https://github.com/googlemaps/google-maps-ios-utils
und wählen Sie Weiter aus. - Sie werden dann möglicherweise aufgefordert, sich bei Ihrem GitHub-Konto zu authentifizieren. Folgen Sie der Anleitung, um ein persönliches GitHub-Zugriffstoken zu erstellen, um den Vorgang fortzusetzen.
- Wählen Sie im nächsten Fenster das Optionsfeld Version aus, wählen Sie Exakt aus, geben Sie die neueste Version der Maps SDK for iOS-Dienstprogrammbibliothek ein (z.B. "3.4.0") und wählen Sie Weiter aus.
API-Schlüssel in die App einfügen
Unter Xcode-Projekt einrichten wird beschrieben, wie Sie einen API-Schlüssel generieren und Ihrem Xcode-Projekt hinzufügen.Projekt erstellen und ausführen
Nachdem Sie den API-Schlüssel hinzugefügt haben, erstellen Sie das Projekt und führen es aus.
Einer App ein Dienstprogramm hinzufügen
Weitere Informationen zur Verwendung in Ihrer App finden Sie in der jeweiligen Dokumentation: