Ulteriori opzioni di installazione di Unity

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

Il sito fornisce:

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

Questa opzione è 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 per saperne di più sullo strumento dalla documentazione di Unity.

Importare i 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 i 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).

Importare 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 i 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 .tgz delle dipendenze nell'ordine corretto:

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

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 Package Manager e seleziona Add package from tarball (Aggiungi pacchetto da tarball) per aprire il browser dei file.
  3. Seleziona il tarball desiderato nel browser dei file.

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

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

manifest.json

  1. Crea una nuova cartella accanto alla cartella Packages del progetto e chiamala 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 sul disco. Assicurati di aggiungere file: al percorso del file .tgz. Ad esempio, se importi com.google.firebase.storage e le relative dipendenze, il file manifest.json avrà 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 riacquista lo stato attivo, ricarica il file 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. Decomprimere il file .tgz.
  2. Modificare il file manifest.json in modo da utilizzare il percorso della cartella estratta anziché il file .tgz nel seguente 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 quale metodo di importazione stai utilizzando, apri il file Packages/manifest.json nella cartella del progetto Unity. Se il file contiene voci che iniziano con com.google.firebase, il progetto ha utilizzato Unity Package Manager per l'importazione.

Per eseguire la migrazione ai pacchetti di asset:

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

    1. Dal menu Window (Finestra), seleziona Package Manager (Gestore pacchetti). Nella finestra Package Manager (Gestore pacchetti), assicurati che sia selezionata l'opzione "Packages: In Project" (Pacchetti: nel progetto).
    2. Prendi nota delle versioni dei pacchetti Firebase importati.
    3. Fai clic sul nome di ogni pacchetto, quindi fai clic su Remove (Rimuovi). Assicurati di rimuovere sia il pacchetto External Dependency Manager (.com.google.external-dependency-manager) sia 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 progetto Unity.
    • Se devi conservare le versioni correnti di .unitypackage, puoi scaricare e importare i 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 dei prodotti nella cartella Assets all'importazione e al monitoraggio dei prodotti con Unity Package Manager.

Se non sai quale metodo di importazione stai utilizzando, apri il file Packages/manifest.json nella cartella del progetto Unity. Se il file contiene voci che iniziano con com.google.firebase, il 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 siano rimossi dalla cartella Assets utilizzando uno dei seguenti metodi.

    UI di EDM4U

    1. Nel tuo progetto Unity aperto, vai a Assets > External Dependency Manager > Version Handler > Uninstall Managed Packages (Risorse > External Dependency Manager > Gestore versioni > Disinstalla pacchetti gestiti).
    2. Seleziona tutti i pacchetti Firebase ed External Dependency Manager.
    3. Fai clic su Uninstall Selected Package (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.