L'API ARCore Cloud Anchor, ou 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 un exemple d'application
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 avec ARKit équipé d'iOS 12.0 ou version ultérieure (cible de déploiement iOS 12.0 ou version ultérieure requise)
Utiliser des Cloud Anchors
Les étapes suivantes utilisent l'application exemple des ancres Cloud pour vous montrer les tâches essentielles à la configuration et à la création d'une application compatible avec les ancres Cloud ARCore.
Obtenir l'application exemple Cloud Anchors
Clonez ou téléchargez le SDK ARCore pour iOS sur GitHub pour obtenir l'exemple de code de l'application.
Ouvrez une fenêtre de terminal ou de Finder, puis accédez au dossier dans lequel vous avez cloné ou téléchargé le SDK.
Vous trouverez l'exemple de code d'application dans
/arcore-ios-sdk-master/Examples/CloudAnchorExample
.Le code de l'exemple d'application des 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:
- Créer un
GARSession
- Créer un
ARSession
et l'exécuter - Définir un
ARSessionDelegate
. - Transmission de
ARFrame
s àGARSession
dans la méthodesession:didUpdateFrame:
.
Configurer le partage d'ID d'ancre cloud
L'application exemple Cloud Anchors utilise Firebase pour partager des 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'application exemple:
- Suivez les instructions Firebase pour ajouter Firebase à votre application.
- Téléchargez le fichier
GoogleService-Info.plist
généré lors de l'ajout de Firebase à votre application. - Activez Firebase Storage 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.
- Dans Xcode, ajoutez le fichier
GoogleService-Info.plist
à votre application, à côté deInfo.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 iOS dont vous avez besoin. Pour installer ces dépendances:
- Ouvrez une fenêtre de terminal et exécutez
pod update
à partir du dossier où se trouve le projet Xcode.
Cette opération génère un fichier.xcworkspace
que vous utiliserez plus tard pour créer et exécuter l'application.
Pour en savoir plus sur la configuration de Podfile
dans vos propres applications, consultez Ajouter le SDK ARCore à votre application.
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 bundle de l'application
Dans Xcode, modifiez l'ID du bundle de l'application afin de pouvoir la signer avec votre équipe.
Créer et exécuter l'application
Connectez votre appareil et lancez l'application dans Xcode.
(Facultatif) Si vous créez et exécutez l'exemple d'application, consultez la section suivante pour en savoir plus sur l'utilisation de l'application pour héberger et résoudre des ancrages Cloud.
Tester l'application exemple
Créez et exécutez l'application exemple à partir du fichier
.xcworkspace
pour la lancer sur votre appareil.Si vous y êtes invité, autorisez l'application à accéder à la caméra. ARKit commence alors à détecter les plans devant votre caméra.
Appuyez sur HOST pour passer en mode hôte. Un code de pièce pour partager des repères hébergés est généré et s'affiche à l'écran.
Appuyez sur un avion pour commencer à y héberger une ancre cloud.
- L'application place un objet Andy Android sur le plan et y attache une ancre.
- Une requête d'hôte est envoyée au point de terminaison cloud de l'API ARCore. La requête de l'hôte inclut des données représentant la position de l'ancre par rapport aux éléments visuels à proximité.
- Une fois l'ancre hébergée, elle reçoit un ID qui permet de résoudre les ancres cloud dans cet espace.
Appuyez sur RESOLVE et saisissez un code de pièce pour accéder aux ancres cloud précédemment hébergées pour cette pièce, à l'aide du même appareil ou d'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'ancrage cloud. Si l'ID correspond à un ancrage hébergé et que la localisation aboutit, le serveur renvoie la transformation de l'ancrage dans vos coordonnées locales.
- L'application exemple utilise la transformation pour ajouter l'ancrage à votre scène et afficher les objets virtuels qui y sont associés.
Ajouter le SDK ARCore à vos applications
Dans vos propres applications, vous devrez mettre à jour votre Podfile
pour inclure le SDK ARCore et la version iOS compatible. Pour ce faire :
Ajoutez les
platform
etpod
suivants auPodfile
de votre projet:platform :ios, '11.0' pod 'ARCore/CloudAnchors', '~> 1.48.0'
- Ouvrez une fenêtre de terminal et exécutez
pod update
à partir du dossier où se trouve votre projet Xcode.
Cela génère un fichier.xcworkspace
que vous utilisez pour créer et exécuter l'application.
Ancres cloud persistantes
Comme décrit dans la section Héberger une ancre cloud avec persistance, vous pouvez définir une durée de vie maximale de 365 jours pour l'ancre cloud. Un exemple de code pour utiliser des ancrages cloud persistants est disponible dans le répertoire /arcore-ios-sdk-master/Examples/PersistentCloudAnchorExample
du SDK ARCore pour iOS sur GitHub.
Étapes suivantes
Consultez le guide du développeur Cloud Anchors pour iOS pour découvrir l'exemple de code d'application et en savoir plus sur l'utilisation de Cloud Anchors dans vos propres applications.
Consultez la documentation de référence de l'API ARCore pour iOS pour en savoir plus.