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 quindibrew install git
ebrew 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.
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.
Dopo aver creato la risorsa, il portale di Azure indica che la distribuzione è stata 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.
Copiare anche il valore di Dominio account della risorsa in un editor di testo per un uso successivo.
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.
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.
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.
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.
Selezionare Build and then run the current scheme (Compila e quindi esegui lo schema corrente).
Nell'app selezionare BasicDemo usando le frecce, quindi premere il pulsante Vai! per eseguire la demo. Seguire le istruzioni posizionare e richiamare un ancoraggio.
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.