Eseguire l'app di esempio: iOS - Unity (C#)

Questa guida introduttiva illustra come eseguire l'app di esempio Ancoraggi nello spazio di Azure per i dispositivi iOS usando Unity (C#). Ancoraggi nello spazio di Azure è un servizio per lo sviluppo multipiattaforma che consente di creare esperienze di realtà mista usando oggetti la cui posizione persiste tra dispositivi nel corso del tempo. Al termine si avrà un'app ARKit per iOS compilata con Unity in grado di salvare e richiamare un ancoraggio nello spazio.

Si apprenderà come:

  • Creare un account di Ancoraggi nello spazio
  • Preparare le impostazioni di compilazione di Unity
  • Configurare l'identificatore e la chiave dell'account di Ancoraggi nello spazio
  • Esportare il progetto Xcode
  • Distribuire ed eseguire l'app in un dispositivo iOS

Se non si ha una sottoscrizione di Azure, creare un account Azure gratuito prima di iniziare.

Prerequisiti

Per completare questa guida introduttiva, accertarsi di disporre di quanto segue:

  • Un dispositivo iOS compatibile con ARKit abilitato per lo sviluppo.
  • Un computer macOS con la versione più recente di Xcode installata.
  • Installazione di Unity. Per le versioni supportate e le funzionalità necessarie, visitare la pagina di configurazione del progetto Unity.
  • Git installato tramite HomeBrew. Immettere il comando seguente in una singola riga del terminale: /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)". Eseguire quindi brew install git e brew install git-lfs.

Creare una risorsa di Ancoraggi nello spazio

Vai al portale di Azure.

Nel riquadro sinistro selezionare Crea una risorsa.

Digitare Ancoraggi nello spazio nella casella di ricerca.

Screenshot che mostra i risultati di una ricerca di ancoraggi nello spazio.

Selezionare Ancoraggi nello spazio, quindi selezionare Crea.

Nel riquadro Account ancoraggi nello spazio procedere come segue:

  • Immettere un nome di risorsa univoco usando i normali caratteri alfanumerici.

  • Selezionare la sottoscrizione a cui collegare la risorsa.

  • Creare un gruppo di risorse selezionando Crea nuovo. Assegnare al gruppo il nome myResourceGroup e quindi selezionare OK.

    Un gruppo di risorse è un contenitore logico in cui vengono distribuite e gestite risorse di Azure come app Web, database e account di archiviazione. Ad esempio, si può scegliere in un secondo momento di eliminare l'intero gruppo di risorse in un unico semplice passaggio.

  • Selezionare un'area in cui inserire la risorsa.

  • Selezionare Crea per iniziare a creare la risorsa.

Screenshot del riquadro Ancoraggi nello spazio per la creazione di una risorsa.

Dopo aver creato la risorsa, il portale di Azure indica che la distribuzione è stata completata.

Screenshot che mostra la distribuzione della risorsa completata.

Selezionare Vai alla risorsa. È ora possibile visualizzare le proprietà della risorsa.

Copiare il valore di ID account della risorsa in un editor di testo per un uso successivo.

Screenshot del riquadro di proprietà della risorsa.

Copiare anche il valore di Dominio account della risorsa in un editor di testo per un uso successivo.

Screenshot che mostra il valore di Dominio account della risorsa.

In Impostazioni selezionare Chiave di accesso. Copiare i valori di Chiave primaria e Chiave dell'account in un editor di testo per un uso successivo.

Screenshot del riquadro delle chiavi per l'account.

Scaricare il progetto di esempio e importare l'SDK

Clonare il repository di esempi

Per clonare il repository di esempi, eseguire questo comando:

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

Importare ASA SDK

Seguire le istruzioni riportate qui per scaricare e importare i pacchetti ASA SDK necessari per la piattaforma iOS.

Configurare Unity

In Unity aprire il progetto nella cartella Unity. Unity potrebbe segnalare una differenza tra la versione del progetto e quella installata nel computer. Questo avviso è accettabile purché la versione dell'editor di Unity sia più recente rispetto a quella con cui è stato creato il progetto. Se la versione in uso è più recente, selezionare Continua. Se la versione in uso è meno recente di quella richiesta dal progetto, selezionare Escied eseguire l'aggiornamento dell'editor di Unity.

Screenshot del riquadro Unity.

Aprire Build Settings (Impostazioni compilazione) selezionando File>Build Settings (File -> Impostazioni compilazione).

Nella sezione Platform (Piattaforma) selezionare iOS.

Selezionare Switch Platform (Cambia piattaforma) per impostare iOS come piattaforma. Unity potrebbe chiedere di installare i componenti di supporto di iOS se sono mancanti.

Screenshot della finestra di impostazioni di compilazione di Unity.

Chiudi la finestra Build Settings (Impostazioni di compilazione).

Configurare le informazioni sull'account

Il passaggio successivo consiste nel configurare l'app per l'uso delle informazioni sull'account. I valori di Chiave dell'account, ID account e Dominio account sono stati in precedenza copiati in un editor di testo, nella sezione "Creare una risorsa di ancoraggi nello spazio".

Nel riquadro Progetto passare a Assets\AzureSpatialAnchors.SDK\Resources.

Selezionare SpatialAnchorConfig. Nel riquadro Controllo immettere Account Key come valore per Chiave dell'account, Account ID come valore per ID account e Account Domain come valore per Dominio account di ancoraggi nello spazio.

Esportare il progetto Xcode

Aprire Build Settings (Impostazioni compilazione) selezionando File>Build Settings (File -> Impostazioni compilazione).

In Scenes In Build (Scene nella compilazione) assicurarsi che tutte le scene abbiano un segno di spunta.

Selezionare Compilazione. Nel riquadro visualizzato selezionare una cartella in cui esportare il progetto Xcode.

Al termine dell'esportazione, viene visualizzata una cartella contenente il progetto Xcode esportato.

Nota

Se viene visualizzata una finestra con un messaggio che chiede se sostituire o accodare, è consigliabile selezionare Accoda perché è la procedura più veloce. Sostituisci rimuoverà tutti i file dalla cartella di destinazione e genererà nuovo contenuto.

Aprire il progetto Xcode

Ora è possibile aprire il progetto Unity-iPhone.xcodeproj in Xcode.

È possibile avviare Xcode e aprire il progetto Unity-iPhone.xcodeproj esportato oppure avviare il progetto in Xcode eseguendo il comando seguente dalla posizione in cui è stato esportato:

open ./Unity-iPhone.xcodeproj

Selezionare il nodo Unity-iPhone radice per visualizzare le impostazioni del progetto e selezionare la scheda General (Generale).

In Informazioni sulla distribuzione assicurarsi che la destinazione della distribuzione sia impostata su iOS 11.0.

Selezionare la scheda Signing & Capabilities (Firma e funzionalità) e assicurarsi che l'opzione Automatically manage signing (Gestisci automaticamente la firma) sia abilitata. Se non lo è, abilitarla e quindi reimpostare le impostazioni di compilazione selezionando Enable Automatic (Abilita automatico) nella finestra di dialogo visualizzata.

Distribuire l'app nel dispositivo iOS

Connettere il dispositivo iOS al Mac e impostare lo schema attivo sul dispositivo iOS.

Screenshot del pulsante My iPhone per la selezione del dispositivo.

Selezionare Build and then run the current scheme (Compila e quindi esegui lo schema corrente).

Screenshot del pulsante freccia

Nell'app selezionare BasicDemo usando le frecce, quindi premere il pulsante Vai! per eseguire la demo. Seguire le istruzioni posizionare e richiamare un ancoraggio.

Screenshot 1Screenshot 2Screenshot 3

Al termine, arrestare l'app premendo Stop (Arresta) in Xcode.

Risoluzione dei problemi

Problemi di rendering

Se durante l'esecuzione dell'app non si vede la videocamera sullo sfondo, ma si vede invece, ad esempio, uno sfondo vuoto, blu o un'altra trama, è probabilmente necessario reimportare gli asset in Unity. Arrestare l'app. Dal menu in alto in Unity scegliere Asset -> Reimporta tutto. Quindi eseguire di nuovo l'app.

Pulire le risorse

Nei passaggi precedenti sono state create risorse di Azure in un gruppo di risorse. Se non si prevede di aver bisogno di queste risorse in futuro, è possibile eliminarle eliminando il gruppo di risorse.

Nel menu del portale di Azure o nella pagina Home selezionare Gruppi di risorse. Quindi, nella pagina Gruppi di risorse selezionare myResourceGroup.

Nella pagina myResourceGroup assicurarsi che le risorse elencate siano quelle da eliminare.

Selezionare Elimina gruppo di risorse, digitare myResourceGroup nella casella di testo per confermare e quindi selezionare Elimina.

Passaggi successivi

In questa guida di avvio rapido è stato creato un account di Ancoraggi nello spazio. È stata quindi configurata e distribuita un'app per salvare e richiamare gli ancoraggi nello spazio. Per altre informazioni su come migliorare l'app in modo da consentire la condivisione di ancoraggi nello spazio con altri dispositivi, continuare con l'esercitazione successiva.