Guide de démarrage rapide pour les ancres cloud dans iOS

L'API ARCore Cloud Anchor, ou le service ARCore Cloud Anchor, fournit des fonctionnalités d'ancrage cloud pour vos applications iOS, ce qui permet aux utilisateurs d'appareils iOS et Android de partager des expériences de RA.

Ce guide vous explique comment:

  • Configurer votre environnement de développement pour qu'il fonctionne avec Cloud Anchors
  • Essayer d'héberger et de résoudre des ancres dans une application exemple

Prérequis

  • Xcode version 13.0 ou ultérieure
  • CocoaPods 1.4.0 ou version ultérieure si vous utilisez CocoaPods
  • Un appareil Apple compatible ARKit fonctionnant sous iOS 12.0 ou version ultérieure (cible de déploiement requise pour iOS 12.0 ou version ultérieure)

Utiliser Cloud Anchors

Les étapes suivantes utilisent l'application exemple Cloud Anchors pour vous montrer les tâches critiques de configuration et de création d'une application compatible avec ARCore Cloud Anchors.

Obtenir l'application exemple Cloud Anchors

  1. Clonez ou téléchargez le SDK ARCore pour iOS depuis GitHub pour obtenir l'exemple de code d'application.

  2. Ouvrez une fenêtre Terminal ou Finder et accédez au dossier dans lequel vous avez cloné ou téléchargé le SDK.

  3. Vous trouverez l'exemple de code d'application dans
    /arcore-ios-sdk-master/Examples/CloudAnchorExample.

    L'exemple de code d'application ancres cloud persistantes se trouve dans
    /arcore-ios-sdk-master/Examples/PersistentCloudAnchorExample.

Configuration de la session

L'application exemple effectue les tâches importantes suivantes lors de la configuration de la session:

Configurer le partage des ID d'ancre cloud

L'application exemple Cloud Anchors utilise Firebase pour partager les ID d'ancre cloud entre les appareils. Vous pouvez utiliser une autre solution dans vos propres applications.

Pour configurer la base de données Firebase dans l'exemple d'application:

  1. Suivez les instructions Firebase pour ajouter Firebase à votre application.
  2. Téléchargez le fichier GoogleService-Info.plist généré lors de l'ajout de Firebase à votre application.
  3. Activez le stockage Firebase pour l'exemple :
    • Accédez à la console Firebase, puis sélectionnez le projet que vous avez configuré pour l'application exemple.
    • Sélectionnez le panneau Database.
    • Sur l'option Realtime Database, cliquez sur Get Started.
    • Le menu Security rules for Realtime Database s'ouvre.
      • Pour exécuter l'exemple, sélectionnez Start in test mode.
      • Notez que si vous utilisez Firebase pour une application que vous prévoyez de publier, vous devez utiliser des règles de sécurité plus restrictives.
  4. Dans Xcode, ajoutez le fichier GoogleService-Info.plist à votre application, à côté de Info.plist.

Configurer l'API ARCore

Pour utiliser Cloud Anchors, vous devez d'abord configurer l'API ARCore pour votre application.

Exécuter la mise à jour du pod

L'application CloudAnchorExample est fournie avec un Podfile préconfiguré avec le SDK ARCore et les versions d'iOS dont vous aurez besoin. Pour installer ces dépendances:

  1. Ouvrez une fenêtre de terminal et exécutez pod update à partir du dossier contenant le projet Xcode.
    Cette opération génère un fichier .xcworkspace que vous utiliserez plus tard pour compiler et exécuter l'application.

Pour en savoir plus sur la configuration du Podfile dans vos propres applications, consultez la section Ajouter le SDK ARCore à votre application.

  1. Ouvrez le fichier .xcworkspace du projet dans Xcode.

    Pour éviter les erreurs de compilation, assurez-vous de compiler à partir du fichier .xcworkspace et non du fichier .xcodeproj.

Modifier l'ID de l'app bundle

Dans Xcode, modifiez l'ID du bundle de l'application afin de pouvoir signer l'application avec votre équipe.

Créer et exécuter l'application

  1. Connectez votre appareil et lancez l'application dans Xcode.

  2. (Facultatif) Si vous compilez et exécutez l'application exemple, consultez la section suivante pour savoir comment utiliser l'application pour héberger et résoudre des ancres cloud.

Essayer l'application exemple

  1. Créez et exécutez l'application exemple à partir du fichier .xcworkspace pour la lancer sur votre appareil.

  2. Si vous y êtes invité, autorisez l'application à accéder à l'appareil photo. ARKit commence alors à détecter les plans situés devant votre caméra.

  3. Appuyez sur HOST pour passer en mode d'hébergement. Un code de salle pour le partage des ancres hébergées est généré et s'affiche à l'écran.

  4. Appuyez sur un avion pour commencer à héberger une ancre cloud à cet endroit.

    • L'application place un objet Android Andy sur la surface plane et lui associe une ancre.
    • Une requête d'hôte est envoyée au point de terminaison cloud de l'API ARCore. La requête hôte inclut des données représentant la position de l'ancre par rapport aux caractéristiques visuelles à proximité.
    • Une fois l'ancre hébergée, elle obtient un ID permettant de résoudre les ancres cloud dans cet espace.
  5. Appuyez sur RESOLVE et saisissez un code de salle pour accéder aux ancres cloud précédemment hébergées pour cette salle, avec le même appareil ou un autre.

    • Une requête de résolution est envoyée au point de terminaison cloud de l'API ARCore.
    • La requête de résolution inclut un ID d'ancre cloud. Si l'ID correspond à une ancre hébergée et que la localisation aboutit, le serveur renvoie la transformation de l'ancre dans vos coordonnées locales.
    • L'application exemple utilise la transformation pour ajouter l'ancre à votre scène et afficher les objets virtuels qui lui sont associés.

Ajouter le SDK ARCore à vos applications

Dans vos propres applications, vous devez mettre à jour votre Podfile pour inclure le SDK ARCore et la gestion des versions iOS compatibles. Procédez comme suit :

  1. Ajoutez les éléments platform et pod suivants au fichier Podfile de votre projet:

        platform :ios, '11.0'
        pod 'ARCore/CloudAnchors', '~> 1.41.0'
    
  1. Ouvrez une fenêtre de terminal et exécutez pod update à partir du dossier contenant votre projet Xcode.
    Cela génère un fichier .xcworkspace que vous utilisez pour compiler et exécuter l'application.

Ancres cloud persistantes

Comme décrit dans la section Héberger une ancre cloud avec persistance, vous pouvez attribuer à l'ancre cloud une durée de vie allant jusqu'à 365 jours. Un exemple de code permettant d'utiliser des ancres cloud persistantes est disponible dans le répertoire /arcore-ios-sdk-master/Examples/PersistentCloudAnchorExample du SDK ARCore pour iOS sur GitHub.

Étapes suivantes