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 :

    iOSTutorial-Module2-Step1

    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.

Ce module vous a-t-il été utile ?

Merci
Merci de nous indiquer ce que vous avez aimé.
Fermer
Nous sommes désolés de vous décevoir.
Quelque chose est-il obsolète, déroutant ou inexact ? Aidez-nous à améliorer ce didacticiel en fournissant des commentaires.
Fermer

Ajouter une authentification