Ejecución de la aplicación de ejemplo: iOS - Xcode (Swift u Objective-C)

En este inicio rápido, se explica cómo ejecutar la aplicación de ejemplo de Azure Spatial Anchors para dispositivos iOS mediante Xcode (Swift u Objective-C). Azure Spatial Anchors es un servicio multiplataforma para desarrolladores que le permite crear experiencias de realidad mixta mediante objetos cuya ubicación persiste en todos los dispositivos a lo largo del tiempo. Cuando haya terminado, tendrá una aplicación iOS de ARKit que puede guardar y recuperar un delimitador espacial.

Aprenderá a:

  • Crear una cuenta de Spatial Anchors
  • Configurar la clave y el identificador de la cuenta de Spatial Anchors
  • Implementarlo y ejecutarlo en un dispositivo iOS

Si no tiene una suscripción a Azure, cree una cuenta gratuita de Azure antes de empezar.

Prerrequisitos

Para completar esta guía de inicio rápido, asegúrese de que dispone de lo siguiente:

  • Una máquina macOS habilitada para el desarrollo que tenga instaladas las versiones más recientes de Xcode y CocoaPods.
  • Git instalado mediante HomeBrew:
    1. Escriba el siguiente comando en una sola línea en el terminal: /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)".
    2. Ejecute brew install git y brew install git-lfs.
    3. Actualice la configuración de Git con git lfs install (para el usuario actual) o git lfs install --system (para todo el sistema).
  • Un dispositivo iOS compatible con ARKit habilitado para el desarrollo.

Creación de un recurso de Spatial Anchors

Vaya a Azure Portal.

En el menú izquierdo, seleccione Crear un recurso.

Use el cuadro de búsqueda para buscar Spatial Anchors.

Captura de pantalla que muestra los resultados de una búsqueda de Spatial Anchors.

Seleccione Spatial Anchors y, después, seleccione Crear.

En el panel Cuenta de Spatial Anchors, haga lo siguiente:

  • Escriba un nombre de recurso único con caracteres alfanuméricos normales.

  • Seleccione la suscripción a la que desea asociar el recurso.

  • Cree un grupo de recursos, para lo que debe seleccionar Crear nuevo. Asígnele el nombre myResourceGroup y luego seleccione Aceptar.

    Un grupo de recursos es un contenedor lógico en el que los recursos de Azure, como aplicaciones web, bases de datos y cuentas de almacenamiento, se implementen y administren. Por ejemplo, más adelante puede elegir eliminar todo el grupo de recursos en un solo paso.

  • Seleccione la ubicación (región) en la que desea colocar el recurso.

  • Seleccione Crear para empezar a crear el recurso.

Captura de pantalla del panel Spatial Anchors para crear un recurso.

Una vez creado el recurso, Azure Portal muestra que se ha completado la implementación.

Captura de pantalla que muestra que la implementación del recurso se ha completado.

Haga clic en Go to resource (Ir al recurso). Ahora puede ver las propiedades del recurso.

Copie el valor de Id. de cuenta del recurso en un editor de texto para usarlo más adelante.

Captura de pantalla del panel de propiedades de recursos.

Copie también el valor de Account Domain (Dominio de cuenta) del recurso en un editor de texto para usarlo más adelante.

Captura de pantalla que muestra el valor del dominio de la cuenta del recurso.

En Configuración, seleccione Clave de acceso. Copie el valor de Clave principal, Clave de cuenta, en un editor de texto para su uso posterior.

Captura de pantalla del panel de claves de la cuenta.

Apertura del proyecto de ejemplo

Use Terminal para realizar las acciones siguientes:

Ejecute los siguientes comandos para clonar el repositorio de ejemplos:

git clone https://github.com/Azure/azure-spatial-anchors-samples.git
cd ./azure-spatial-anchors-samples

Instale los pods necesarios mediante CocoaPods:

Vaya a iOS/Swift/.

cd ./iOS/Swift/

Ejecute pod install --repo-update para instalar los pods de CocoaPods para el proyecto.

Nota

Use el siguiente comando si tiene macOS Monterey (12.2.1)

Ejecute pod update para instalar los pods de CocoaPods para el proyecto.

Ahora abra .xcworkspace en Xcode.

Nota

Consulte los pasos de solución de problemas aquí si tiene problemas con CocoaPod después de actualizar a macOS Catalina (10.15).

open ./SampleSwift.xcworkspace

Configuración del identificador y la clave de la cuenta

El paso siguiente es configurar la aplicación para usar el identificador de cuenta y la clave de cuenta. Los copió en un editor cuando configuró el recurso de Spatial Anchors.

Abra iOS/Swift/SampleSwift/ViewControllers/BaseViewController.swift.

Busque el campo spatialAnchorsAccountKey y reemplace Set me por la clave de la cuenta.

Busque el campo spatialAnchorsAccountId y reemplace Set me por el identificador de la cuenta.

Busque el spatialAnchorsAccountDomain campo y reemplácelo Set me por el dominio de la cuenta.

Implementación de la aplicación en el dispositivo iOS

Conecte el dispositivo iOS al equipo Mac y establezca el esquema activo en su dispositivo iOS.

Selección del dispositivo

Seleccione Build and then run the current scheme (Compilar y luego ejecutar el esquema actual).

Implementación y ejecución

Nota

Si ve un error library not found for -lPods-SampleObjC, es probable que haya abierto el archivo .xcodeproj en lugar de .xcworkspace. Abra .xcworkspace e inténtelo de nuevo.

En Xcode, presione Stop (Detener) para detener la aplicación.

Solución de problemas

Problemas con CocoaPods en macOS Catalina (10.15)

Si ha actualizado recientemente a macOS Catalina (10.15) y tenía CocoaPods instalado con antelación, puede que CocoaPods esté en un estado interrumpido y no pueda configurar correctamente los pods y los archivos de proyecto de .xcworkspace. Para resolver este problema, debe volver a instalar CocoaPods ejecutando los siguientes comandos:

brew update
brew install cocoapods --build-from-source
brew link --overwrite cocoapods

La aplicación se bloquea cuando se implementa en iOS 10.3.1 desde un perfil de aprovisionamiento personal o una cuenta de desarrollador

Si implementa la aplicación iOS en iOS 10.3.1 desde un perfil de aprovisionamiento personal o una cuenta de desarrollador, es posible que vea este error: Library not loaded: @rpath/ADAL....

Para resolver el problema:

  • Use un perfil de aprovisionamiento que no sea un perfil de equipo personal (cuenta de desarrollador de pago).
  • Implemente la aplicación en un dispositivo iOS que ejecute iOS 13.3 o anterior, o en uno que ejecute la versión beta o de lanzamiento de iOS 13.4.
  • Obtenga más información sobre este problema en Stack Overflow.

Limpieza de recursos

En los pasos anteriores, creó recursos de Azure en un grupo de recursos. Si no cree que vaya a necesitar estos recursos en el futuro, puede eliminarlos mediante la eliminación del grupo de recursos.

En el menú de Azure Portal o la página Inicio, seleccione Grupos de recursos. En la página Grupos de recursos, seleccione myResourceGroup.

En la página myResourceGroup, asegúrese de que los recursos enumerados sean los que desea eliminar.

Seleccione Eliminar grupo de recursos, escriba myResourceGroup en el cuadro de texto para confirmar y, después, seleccione Eliminar.

Pasos siguientes

En este inicio rápido, ha creado una cuenta de Spatial Anchors. Después, ha configurado e implementado una aplicación para guardar y recuperar los anclajes espaciales. Para más información acerca de cómo mejorar la aplicación para que pueda compartir anclajes espaciales con otros dispositivos, diríjase al siguiente tutorial.