Ulteriori opzioni di installazione di Unity

Anziché scaricare un file .zip di grandi dimensioni contenente tutti i file .unitypackage per .NET 3.X e .NET 4.X, puoi scaricare singoli pacchetti dal sito delle API Google per Unity.

Il sito offre:

  • Singoli file .NET 4.X .unitypackage da importare come pacchetti di asset.
  • Singoli archivi .tgz da importare utilizzando Unity Package Manager.

Ciò è particolarmente utile quando l'app utilizza un singolo prodotto Firebase, poiché i singoli file .unitypackage contengono tutte le dipendenze necessarie e i file .tgz sono elencati insieme ai file .tgz correlati da cui dipendono.

Questa pagina fornisce istruzioni che riguardano Unity Package Manager, quindi è una buona idea imparare a utilizzare lo strumento dalla documentazione di Unity.

Importare pacchetti Firebase come asset

Quando importi i prodotti Firebase dai file .unitypackage scaricati dal sito delle API di Google per Unity, tieni presente quanto segue:

  • Se utilizzi più prodotti Firebase nel tuo progetto, devi scaricare ed eseguire l'upgrade di tutti i prodotti Firebase alla stessa versione.

  • Non combinare metodi di importazione in un unico progetto. ovvero non importare i prodotti Firebase con il flusso del pacchetto di asset e utilizzando il flusso di Unity Package Manager.

Dopo il download, per importare:

  1. Nel tuo progetto Unity aperto, vai a Assets > Import Package > Custom Package (Risorse > Importa pacchetto > Pacchetto personalizzato).

  2. Nella finestra Import Unity Package (Importa il pacchetto Unity), fai clic su Import (Importa).

Importa i pacchetti Firebase utilizzando Unity Package Manager

Quando importi i prodotti Firebase dai file .tgz scaricati dall'archivio delle API di Google per Unity, tieni presente quanto segue:

  • Questo metodo è disponibile solo nella versione 2018.3 e successive.

  • Se utilizzi più prodotti Firebase nel tuo progetto, devi scaricare ed eseguire l'upgrade di tutti i prodotti Firebase alla stessa versione.

  • Non combinare metodi di importazione in un unico progetto. ovvero non importare i prodotti Firebase con il flusso del pacchetto di asset e con il flusso di Unity Package Manager.

  • Le dipendenze per ogni file .tgz del prodotto sono collegate insieme nei rispettivi file .tgz. Devi scaricare e importare il file .tgz del prodotto e i file delle dipendenze .tgz nell'ordine corretto:

    1. External Dependency Manager (com.google.external-dependency-manager)
    2. Firebase Core (com.google.firebase.app)
    3. Prodotti Firebase utilizzati nel tuo progetto. Se utilizzi Realtime Database o Cloud Storage, importa prima Authentication (com.google.firebase.auth).

Dopo il download, importa i file .tgz nel progetto utilizzando uno dei seguenti metodi:

UI di Package Manager

  1. Apri la finestra Package Manager di Unity.
  2. Fai clic sull'icona + nell'angolo in alto a sinistra della finestra di Package Manager e seleziona Add package from tarball per aprire il browser dei file.
  3. Seleziona il tarball desiderato nel browser di file.

Alcune versioni precedenti di Unity 2019 non supportano l'aggiunta diretta di tarball. In questo caso, dovrai:

  1. Decomprimi il file .tgz.
  2. Fai clic sull'icona + nell'angolo in alto a sinistra della finestra di Package Manager e seleziona Add package from disk per aprire il browser dei file.
  3. Seleziona la cartella estratta nel browser di file.

manifest.json

  1. Crea una nuova cartella accanto alla cartella Packages del progetto e assegnale il nome GooglePackages.
  2. Inserisci i file .tgz in questa cartella.
  3. Utilizza un editor di testo per aprire Packages/manifest.json nella cartella del progetto Unity.
  4. Aggiungi una voce per ogni pacchetto che vuoi importare, mappando il nome del pacchetto alla posizione su disco. Assicurati di aggiungere file: al percorso del file .tgz. Ad esempio, se importassi com.google.firebase.storage e le relative dipendenze, manifest.json avrebbe il seguente aspetto:

    {
      "dependencies": {
        "com.google.external-dependency-manager": "file:../GooglePackages/com.google.external-dependency-manager-1.2.164.tgz",
        "com.google.firebase.app": "file:../GooglePackages/com.google.firebase.app-7.1.0.tgz",
        "com.google.firebase.auth": "file:../GooglePackages/com.google.firebase.auth-7.1.0.tgz",
        "com.google.firebase.storage": "file:../GooglePackages/com.google.firebase.storage-7.1.0.tgz",
        // com.unity package entries...
      }
    }
    
  5. Salva il file manifest.json.

  6. Quando Unity riacquisisce lo stato attivo, ricarica manifest.json e importa i pacchetti appena aggiunti.

Alcune versioni precedenti di Unity non supportano i file .tgz in manifest.json. In questo caso, devi:

  1. Decomprimi il file .tgz.
  2. Modifica manifest.json per utilizzare il percorso della cartella estratta, anziché il file .tgz, in questo modo:

    {
      "dependencies": {
        "com.google.external-dependency-manager": "file:../GooglePackages/com.google.external-dependency-manager-1.2.164",
        "com.google.firebase.app": "file:../GooglePackages/com.google.firebase.app-7.1.0",
        "com.google.firebase.auth": "file:../GooglePackages/com.google.firebase.auth-7.1.0",
        "com.google.firebase.storage": "file:../GooglePackages/com.google.firebase.storage-7.1.0",
        // com.unity package entries...
      }
    }
    

Eseguire la migrazione da Unity Package Manager ai pacchetti di asset

In alcuni casi, potresti voler passare dall'utilizzo di Unity Package Manager per monitorare i prodotti Firebase all'importazione dei prodotti nella cartella Assets.

Se non sai con certezza quale metodo di importazione stai utilizzando, nella cartella del progetto Unity, apri il file Packages/manifest.json. Se il file contiene voci che iniziano con com.google.firebase, il tuo progetto ha utilizzato Unity Package Manager per l'importazione.

Per eseguire la migrazione ai pacchetti di asset:

  1. Prendi nota delle versioni attuali dei pacchetti Firebase nel tuo progetto e rimuovile.

    1. Dal menu Window (Finestra), seleziona Package Manager (Gestione pacchetti). Nella finestra Package Manager, assicurati che sia selezionata l'opzione "Pacchetti: nel progetto".
    2. Prendi nota delle versioni dei pacchetti Firebase importati.
    3. Fai clic su ogni nome del pacchetto, quindi su Rimuovi. Assicurati di rimuovere il pacchetto External Dependency Manager (.com.google.external-dependency-manager) e i pacchetti Firebase.
  2. Scarica e importa i file .unitypackage sostitutivi. Sono disponibili due opzioni:

    • Se puoi eseguire l'upgrade all'ultima versione di ogni pacchetto, scarica il file zip dell'SDK Firebase Unity e importalo come descritto in Aggiungere Firebase al tuo progetto Unity.
    • Se devi conservare le versioni attuali di .unitypackage, puoi scaricare e importare singoli pacchetti come descritto sopra in questa pagina.

Eseguire la migrazione dai pacchetti di asset a Unity Package Manager

In alcuni casi, potresti voler passare dall'importazione di prodotti nella cartella Assets all'importazione e al monitoraggio dei prodotti con Unity Package Manager.

Se non sai con certezza quale metodo di importazione stai utilizzando, nella cartella del progetto Unity, apri il file Packages/manifest.json. Se il file contiene voci che iniziano con com.google.firebase, il tuo progetto utilizza già Unity Package Manager per l'importazione.

Per eseguire la migrazione a Unity Package Manager:

  1. Assicurati che tutti i pacchetti Firebase e il pacchetto External Dependency Manager vengano rimossi dalla cartella Assets utilizzando uno dei seguenti metodi.

    Interfaccia utente EDM4U

    1. Nel tuo progetto Unity aperto, vai a Assets > External Dependency Manager > Version Handler > Uninstall Managed Packages (Risorse > External Dependency Manager > Version Handler > Disinstalla pacchetti gestiti).
    2. Seleziona tutti i pacchetti Firebase e External Dependency Manager.
    3. Fai clic su Disinstalla pacchetto selezionato.

    Rimozione manuale

    Utilizzando gli strumenti del file system, elimina manualmente le seguenti cartelle:

    • Assets/Editor Default Resources/Firebase
    • Assets/ExternalDependencyManager
    • Assets/Firebase
    • Assets/Parse
    • Assets/Plugins/iOS/Firebase
  2. Importa i pacchetti utilizzando Unity Package Manager, come descritto sopra in questa pagina.