Table of Contents

Inizializzare EasyAR Sense con License Key

Per usare EasyAR in Unity, è necessario inizializzare EasyAR Sense con una license key per assicurarsi che le funzioni siano attivate. Esistono due metodi di inizializzazione: inizializzazione automatica e inizializzazione manuale.

Dopo il successo dell'inizializzazione, è possibile vedere nella Unity console o nei log del sistema operativo il numero di versione di EasyAR Sense e le informazioni sulla runtime platform, ad esempio:

EasyAR Sense (Android-arm64) Version 4.7.0.11800-cf8e24e30

Prima di iniziare

  • Licenza EasyAR Sense descrive come ottenere una licenza EasyAR Sense (license key). Prima di inizializzare EasyAR Sense, preparare una licenza adeguata in base al dispositivo reale e alla fase di sviluppo.

Inizializzazione automatica

L'inizializzazione automatica è adatta alla maggior parte degli scenari d'uso.

Aprire EasyAR Global Settings, selezionare l'opzione Initialize On Startup e compilare EasyAR Sense License > LicenseKey.

alt text

L'inizializzazione automatica viene chiamata automaticamente al timing Unity BeforeSceneLoad.

Nota

La license usata nell'editor non verifica il package name dell'applicazione, quindi una license che funziona normalmente nell'editor potrebbe comunque fallire quando viene pacchettizzata ed eseguita come platform application o app. In questo caso, prestare attenzione a due situazioni:

  1. Il package name della license inserita deve coincidere con il bundle id/package name inserito in Unity Player Settings.
  2. Se dopo il packaging Unity il package name viene modificato nel progetto gradle o XCode, in Unity è necessario usare il package name in gradle o XCode.

[Opzionale] Inizializzazione manuale

L'inizializzazione manuale viene usata principalmente per custom initialization workflows, ad esempio mostrare una nota sulla privacy dell'utente prima di chiamare interfacce EasyAR (vedere la guida compliance).

Aprire EasyAR Global Settings e deselezionare l'opzione Initialize On Startup.

alt text

Quindi chiamare manualmente l'inizializzazione tramite l'interfaccia EasyARController.Initialize().

È possibile passare la license tramite parametro:

EasyARController.Initialize("my-license");

Oppure usare la license inserita in EasyAR Global Settings:

EasyARController.Initialize();
Importante

EasyARController.Initialize() deve essere chiamato prima dell'avvio di ARSession.

In alcuni casi speciali, se è necessario chiamare più volte EasyARController.Initialize(), assicurarsi di eseguire la deinizializzazione tramite EasyARController.Deinitialize() dopo ogni esecuzione di EasyARController.Initialize().

Soluzioni per errore di inizializzazione

Dopo l'esecuzione di una scena che contiene ARSession, se i log non contengono informazioni simili, significa che l'inizializzazione è fallita.

EasyAR Sense (Android-arm64) Version 4.7.0.11800-cf8e24e30

In Unity Editor potrebbe comparire anche un pop-up simile:

alt text

Nota

Prestare attenzione al testo visualizzato nel pop-up. Non tutti i pop-up indicano errore di inizializzazione.

I messaggi di errore comuni e le cause sono:

  • EasyARSettings is not found
    • L'asset file EasyAR Global Settings non è stato creato (comune quando la license non è stata compilata)
  • License Key is empty
    • La license non è stata compilata in EasyAR Global Settings, oppure nel progetto esistono più asset files EasyAR Global Settings
  • EasyARController.Initialize is not called (InitializeOnStartup = false)
    • L'inizializzazione manuale non è stata chiamata al momento corretto
  • EasyAR stops after script change in play mode
    • Uno script è stato modificato durante l'esecuzione nell'editor. È sufficiente eseguire di nuovo

Argomenti correlati