Erste Schritte mit AWS
Erstellen einer iOS-Anwendung
Erstellen Sie eine einfache iOS-Anwendung mit AWS Amplify
Modul 2: Amplify starten
In diesem Modul werden Sie die Amplify CLI installieren und konfigurieren.
Einführung
Nachdem wir nun eine iOS-Anwendung erstellt haben, wollen wir die Entwicklung fortsetzen und neue Funktionen hinzufügen.
Um mit der Verwendung von AWS Amplify in Ihrer Anwendung zu beginnen, müssen Sie die Amplify-Befehlszeile installieren, das Amplify-Projektverzeichnis initialisieren, Ihr Projekt für die Verwendung der Amplify-Bibliotheken konfigurieren und die Amplify-Bibliotheken zur Laufzeit initialisieren.
Lerninhalte
- Initialisierung eines neuen Amplify-Projekts
- Amplify-Bibliotheken zu Ihrem Projekt hinzufügen
- Initialisieren von Amplify-Bibliotheken zur Laufzeit
Wichtige Konzepte
Amplify CLI – Mit der Amplify CLI können Sie AWS-Services direkt von Ihrem Terminal aus erstellen, verwalten und entfernen.
Amplify-Bibliotheken – Die Amplify-Bibliotheken ermöglichen Ihnen die Interaktion mit AWS-Services über eine Web- oder mobile Anwendung.
Veranschlagte Zeit
10 Minuten
Verwendete Services
Implementierung
-
Installieren der Amplify CLI
AWS Amplify CLI hängt von Node.js ab, siehe Abschnitt "Voraussetzungen" in der Einführung zur Installation von Node.js
Um AWS Amplify CLI zu installieren, öffnen Sie ein Terminal und geben Sie den folgenden Befehl ein:
## Install Amplify CLI npm install -g @aws-amplify/cli ## Verify installation and version amplify --version # Scanning for plugins... # Plugin scan successful # 4.27.2
-
Initialisieren eines Amplify Backends
Um die Grundstruktur unseres Backends zu erstellen, müssen wir zunächst das Amplify Backend initialisieren und unser Cloud Backend erstellen.
Öffnen Sie ein Terminal und wechseln Sie Verzeichnisse zu Ihrem Projekt. Wenn Sie Ihr Projekt zum Beispiel im Ordner ~/Developer erstellt haben, können Sie Folgendes eingeben:
cd ~/Developer/iOS\ Getting\ Started
Vergewissern Sie sich, dass Sie sich im richtigen Verzeichnis befinden, es sollte wie folgt aussehen:
➜ iOS Getting Started git:(master) ✗ ls -al total 32 drwxr-xr-x 9 stormacq admin 288 Jul 8 15:09 . drwxr-xr-x 17 stormacq admin 544 Jul 6 16:20 .. -rw-r--r--@ 1 stormacq admin 6148 Jul 8 15:06 .DS_Store drwxr-xr-x 9 stormacq admin 288 Jul 6 16:12 iOS Getting Started drwxr-xr-x@ 5 stormacq admin 160 Jul 8 15:09 iOS Getting Started.xcodeproj
Initialisieren Sie die Projektstruktur und Konfigurationsdatei von Amplify. Führen Sie den folgenden Befehl aus:
amplify init ? Enter a name for your project (iOSGettingStarted): accept the default, press enter ? Enter a name for the environment (dev): accept the default, press enter ? Choose your default editor: use the arrow key to select your favorite text editor an press enter ? Choose the type of app that you're building: iOS is already selected, press enter ? Do you want to use an AWS profile?, Y, press enter ? Please choose the profile you want to use: use the arrow keys to select your profile and press enter.
Sie können ein Profil mit AWS CLI unter Verwendung von aws configure --profile <name> erstellen, falls Sie noch kein Profil haben.
Amplify initiiert Ihr Projekt in der Cloud, es kann einige Minuten dauern. Nach ein paar Minuten sollten Sie eine Nachricht sehen, wie:
✔ Successfully created initial AWS cloud resources for deployments. ✔ Initialized provider successfully. Initialized your environment successfully. Your project has been successfully initialized and connected to the cloud!
-
Amplify-Bibliotheken zu Ihrem Projekt hinzufügen
Bevor Sie mit diesem Schritt beginnen, stellen Sie bitte sicher, dass Sie Xcode schließen.
a. Öffnen Sie ein Terminal und wechseln Sie Verzeichnisse zu Ihrem Projekt. Wenn Sie Ihr Projekt zum Beispiel im Ordner ~/Developer erstellt haben, können Sie Folgendes tun:
cd ~/Developer/iOS\ Getting\ Started
Vergewissern Sie sich, dass Sie sich im richtigen Verzeichnis befinden, es sollte wie folgt aussehen:
➜ iOS Getting Started git:(master) ✗ ls -al total 32 drwxr-xr-x 9 stormacq admin 288 Jul 8 15:09 . drwxr-xr-x 17 stormacq admin 544 Jul 6 16:20 .. -rw-r--r--@ 1 stormacq admin 6148 Jul 8 15:06 .DS_Store drwxr-xr-x 6 stormacq admin 192 Jul 8 15:26 amplify -rw-r--r-- 1 stormacq admin 64 Jul 8 15:26 amplifyconfiguration.json -rw-r--r-- 1 stormacq admin 116 Jul 8 15:26 awsconfiguration.json drwxr-xr-x 9 stormacq admin 288 Jul 6 16:12 iOS Getting Started drwxr-xr-x@ 5 stormacq admin 160 Jul 8 15:09 iOS Getting Started.xcodeproj
b. Um Ihr Projekt mit dem CocoaPods-Paketmanager zu initialisieren, führen Sie den folgenden Befehl aus.
## is Xcode really closed ? ## Initialize the Amplify Project pod init
Nachdem Sie dies getan haben, sollten Sie eine neu erstellte Datei namens Podfile sehen. Diese Datei wird verwendet, um zu beschreiben, von welchen Paketen Ihr Projekt abhängt.
c. Podfile aktualisieren, um die folgenden Pods aufzunehmen und die Plattform zu aktualisieren:
# you need at least version 13.0 for this tutorial, more recent versions are valid too platform :ios, '13.0' target 'iOS Getting Started' do # Comment the next line if you don't want to use dynamic frameworks use_frameworks! # Pods for getting started pod 'Amplify', '~> 1.0' # required amplify dependency pod 'Amplify/Tools', '~> 1.0' # allows to call amplify CLI from within Xcode end
d. Um die Amplify-Bibliotheken herunterzuladen und in Ihrem Projekt zu installieren, führen Sie den Befehl aus:
pod install --repo-update
e. Nachdem Sie dies getan haben, sollten Sie nun eine Datei namens iOS Getting Started.xcworkspace sehen. Sie müssen diese Datei von nun an anstelle der iOS Getting Started.xcodeproj-Datei verwenden.
Ihr Verzeichnis sollte nun wie folgt aussehen:
➜ iOS Getting Started git:(master) ✗ ls -al total 32 drwxr-xr-x 9 stormacq admin 288 Jul 8 15:09 . drwxr-xr-x 17 stormacq admin 544 Jul 6 16:20 .. -rw-r--r--@ 1 stormacq admin 6148 Jul 8 15:06 .DS_Store drwxr-xr-x 6 stormacq admin 192 Jul 8 15:26 amplify -rw-r--r-- 1 stormacq admin 64 Jul 8 15:26 amplifyconfiguration.json -rw-r--r-- 1 stormacq admin 116 Jul 8 15:26 awsconfiguration.json -rw-r--r-- 1 stormacq admin 394 Jul 8 15:09 Podfile -rw-r--r-- 1 stormacq admin 359 Jul 8 15:09 Podfile.lock drwxr-xr-x 8 stormacq admin 256 Jul 8 15:09 Pods drwxr-xr-x 9 stormacq admin 288 Jul 6 16:12 iOS Getting Started drwxr-xr-x@ 5 stormacq admin 160 Jul 8 15:09 iOS Getting Started.xcodeproj drwxr-xr-x 3 stormacq admin 96 Jul 8 15:09 iOS Getting Started.xcworkspace
Um Ihren Workspace in Xcode zu öffnen, führen Sie den Befehl aus:
xed .
-
Starten Sie Amplify zur Laufzeit
Zur Laufzeit benötigen die Amplify-Bibliotheken die Amplify-Konfigurationsdateien, die von der CLI erstellt werden
a. Hinzufügen der Amplify-Konfigurationsdateien zu unserem Projekt
Suchen Sie mit dem Finder awsconfiguration.json und amplifyconfiguration.json im Root-Verzeichnis Ihres Projektverzeichnisses. Ziehen Sie sie per Drag & Drop in Ihr Xcode-Projekt:
b. Laden Sie die Amplify-Klassen zur Laufzeit
Lassen Sie uns eine Backend-Klasse erstellen, um den Code für die Interaktion mit unserem Backend zu gruppieren. Wir verwenden ein Singleton-Designmuster, um es durch die Anwendung leicht verfügbar zu machen und um sicherzustellen, dass die Amplify-Bibliotheken nur einmal initialisiert werden.
Der Klasseninitialisierer kümmert sich um die Initialisierung der Amplify-Bibliotheken.
Erstellen Sie eine neue Swift-Textdatei Backend.swift, fügen Sie sie zu Ihrem Xcode-Projekt hinzu (STRG-N) und fügen Sie diesen Code hinzu:
import UIKit import Amplify class Backend { static let shared = Backend() static func initialize() -> Backend { return .shared } private init() { // initialize amplify do { try Amplify.configure() print("Initialized Amplify"); } catch { print("Could not initialize Amplify: \(error)") } } }
Wir initialisieren unser Singleton-Backend-Objekt, wenn der Start der Anwendung beendet ist.
Öffnen Sie die Datei AppDelegate.swift und fügen Sie Backend.initialize(); in der Anwendung(:didFinishLaunchingWithOptions:) Methode hinzu, genau wie hier:
// inside the AppDelegate.swift file func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool { // initialize Amplify let _ = Backend.initialize() return true }
-
Überprüfen Sie Ihr Setup
Um zu überprüfen, ob alles wie erwartet funktioniert, erstellen Sie das Projekt. Klicken Sie auf das Menü Produkt und wählen Sie Build oder geben Sie ⌘B ein. Es sollte kein Fehler vorliegen.