Démarrer avec AWS
Créer une application iOS
Créer une application iOS simple avec AWS Amplify
Module 2 : Initialiser Amplify
Dans ce module, vous installerez et configurerez l'interface de ligne de commande (CLI) Amplify.
Introduction
Maintenant que nous avons créé une application iOS, nous voulons en poursuivre le développement et ajouter de nouvelles fonctionnalités.
Pour commencer à utiliser AWS Amplify dans votre application, vous devez installer la ligne de commande Amplify, initialiser le répertoire du projet Amplify, configurer votre projet pour utiliser les bibliothèques Amplify, et initialiser les bibliothèques Amplify au moment de l'exécution.
Ce que vous apprendrez
- Initialiser un nouveau projet Amplify
- Ajouter des bibliothèques Amplify dans votre projet
- Initialiser les bibliothèques Amplify à l'exécution
Concepts clés
Interface de ligne de commande Amplify : l'interface de ligne de commande Amplify vous permet de créer, de gérer et de supprimer des services AWS directement à partir de votre terminal.
Bibliothèques Amplify : ces bibliothèques vous permettent d'interagir avec les services AWS à partir d'une application mobile ou web.
Durée
10 minutes
Services utilisés
Implémentation
-
Installer l'interface de ligne de commande Amplify
L'interface de ligne de commande AWS Amplify dépend de Node.js ; reportez-vous à la section des prérequis dans l'introduction pour installer Node.js
Pour installer l'interface de ligne de commande AWS Amplify, ouvrez un terminal et entrez la commande suivante :
## Install Amplify CLI npm install -g @aws-amplify/cli ## Verify installation and version amplify --version # Scanning for plugins... # Plugin scan successful # 4.27.2
-
Initialiser un backend Amplify
Pour créer la structure de base de notre backend, nous devons d'abord initialiser le répertoire du projet Amplify et créer notre backend cloud.
Ouvrez un terminal et basculez vers les répertoires de votre projet. Par exemple, si vous avez créé votre projet dans le dossier ~/Developer, vous pouvez saisir :
cd ~/Developer/iOS\ Getting\ Started
Vérifiez que vous êtes dans le bon répertoire ; celui-ci doit ressembler à ceci :
➜ 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
Initialisez la structure et le fichier de configuration du projet Amplify et le fichier de configuration. Exécutez la commande suivante :
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.
Vous pouvez créer un profil à l'aide d'aws configure --profile <nom> dans l'interface de ligne de commande AWS si vous n'en avez pas.
Amplify initialise votre projet dans le cloud, ce qui peut prendre quelques minutes. Au bout de quelques minutes, vous devriez voir un message du type :
✔ 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!
-
Ajouter des bibliothèques Amplify à votre projet
Avant de commencer cette étape, veillez à fermer Xcode.
a. Ouvrez un terminal et basculez vers les répertoires de votre projet. Par exemple, si vous avez créé votre projet dans le dossier ~/Developer, vous pouvez :
cd ~/Developer/iOS\ Getting\ Started
Pour vérifier que vous êtes dans le bon répertoire, celui-ci doit ressembler à ceci :
➜ 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. Pour initialiser votre projet à l'aide du gestionnaire de packages CocoaPods, exécutez la commande suivante.
## is Xcode really closed ? ## Initialize the Amplify Project pod init
Le fichier Podfile nouvellement créé doit alors être visible. Il décrit les packages dont dépend votre projet.
c. Mettez à jour Podfile pour inclure les pods suivants et mettre à jour la plateforme :
# 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. Pour télécharger et installer les bibliothèques Amplify dans votre projet, exécutez la commande :
pod install --repo-update
e. Après cela, vous devriez maintenant voir un fichier appelé iOS Getting Started.xcworkspace. Vous devez désormais utiliser ce fichier au lieu du fichier iOS Getting Started.xcodeproj.
Votre répertoire devrait maintenant ressembler à ceci :
➜ 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
Pour ouvrir votre espace de travail dans Xcode, exécutez la commande :
xed .
-
Initialiser Amplify à l'exécution
Au moment de l'exécution, les bibliothèques Amplify nécessitent les fichiers de configuration Amplify générés par la CLI
a. Ajouter les fichiers de configuration Amplify à notre projet
À l'aide du Finder, localisez awsconfiguration.json et amplifyconfiguration.json à la racine du répertoire de votre projet. Glissez et déposez-les dans votre projet Xcode :
b. Charger les classes Amplify à l'exécution
Créons une classe Backend pour regrouper le code afin d'interagir avec notre backend. Nous utilisons un modèle de conception unique afin que l'application y accède aisément et que les bibliothèques Amplify ne soient initialisées qu'une fois.
L'initialiseur de classe s'occupe de l'initialisation des bibliothèques Amplify.
Créez un fichier texte Swift Backend.swift, ajoutez-le à votre projet Xcode (CTRL+N) et ajoutez ce code :
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)") } } }
Nous initialisons notre objet Backend unique lorsque l'application finit de se lancer.
Ouvrez le fichier AppDelegate.swift et ajoutez Backend.initialize(); dans la méthode application(:didFinishLaunchingWithOptions:), comme ceci :
// inside the AppDelegate.swift file func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool { // initialize Amplify let _ = Backend.initialize() return true }
-
Vérifier votre configuration
Pour vérifier que tout fonctionne comme prévu, générez le projet. Cliquez sur le menu Produit et sélectionnez Générer ou tapez ⌘B. Il ne devrait pas y avoir d'erreur.
Conclusion
Vous venez d'initialiser le projet Amplify et vous êtes maintenant prêt à commencer l'ajout de fonctionnalités ! Dans le prochain module, nous ajouterons un flux complet d'authentification des utilisateurs avec seulement quelques lignes de code.