Options d'installation supplémentaires d'Unity

Plutôt que de télécharger un gros fichier .zip contenant tous les fichiers .unitypackage pour .NET 3.X et .NET 4.X, vous pouvez télécharger des packages individuels à partir du site des API Google pour Unity .

Le site propose :

  • Fichiers .NET 4.X .unitypackage individuels à importer en tant que packages d'actifs.
  • Archives .tgz individuelles à importer à l'aide de Unity Package Manager.

Ceci est particulièrement utile lorsque votre application utilise un seul produit Firebase, car les fichiers .unitypackage individuels contiennent toutes les dépendances nécessaires et les fichiers .tgz sont répertoriés à côté des fichiers .tgz associés dont ils dépendent.

Cette page fournit des instructions concernant Unity Package Manager, c'est donc une bonne idée de se renseigner sur l'outil à partir de la documentation Unity .

Importer des packages Firebase en tant qu'actifs

Lorsque vous importez des produits Firebase à partir de fichiers .unitypackage téléchargés à partir du site Google APIs for Unity , gardez les points suivants à l'esprit :

  • Si vous utilisez plusieurs produits Firebase dans votre projet, vous devez télécharger et mettre à niveau tous les produits Firebase vers la même version.

  • Ne mélangez pas les méthodes d’importation dans un même projet. Autrement dit, n'importez pas de produits Firebase avec le flux du package Asset et en utilisant le flux Unity Package Manager.

Après téléchargement, pour importer :

  1. Dans votre projet Unity ouvert, accédez à Assets > Import Package > Custom Package .

  2. Dans la fenêtre Importer un package Unity , cliquez sur Importer .

Importer des packages Firebase à l'aide d'Unity Package Manager

Lorsque vous importez des produits Firebase à partir de fichiers .tgz téléchargés à partir de l' archive des API Google pour Unity , gardez les points suivants à l'esprit :

  • Cette méthode n'est disponible qu'en 2018.3+.

  • Si vous utilisez plusieurs produits Firebase dans votre projet, vous devez télécharger et mettre à niveau tous les produits Firebase vers la même version.

  • Ne mélangez pas les méthodes d’importation dans un même projet. Autrement dit, n'importez pas de produits Firebase avec le flux du package Asset et avec le flux Unity Package Manager.

  • Les dépendances de chaque fichier .tgz de produit sont liées dans leurs propres fichiers .tgz . Vous devez télécharger et importer le fichier .tgz du produit et les fichiers .tgz de dépendance, dans l'ordre correct :

    1. Gestionnaire de dépendances externe ( com.google.external-dependency-manager )
    2. Firebase Core ( com.google.firebase.app )
    3. Produits Firebase utilisés dans votre projet. Si vous utilisez Realtime Database ou Cloud Storage, importez d'abord l'authentification ( com.google.firebase.auth ).

Après le téléchargement, importez les fichiers .tgz dans votre projet en utilisant l'une des méthodes suivantes :

Interface utilisateur du gestionnaire de packages

  1. Ouvrez la fenêtre du gestionnaire de packages d'Unity.
  2. Cliquez sur l'icône + dans le coin supérieur gauche de la fenêtre du gestionnaire de packages et sélectionnez Add package from tarball pour ouvrir le navigateur de fichiers.
  3. Sélectionnez l'archive tar souhaitée dans le navigateur de fichiers.

Certaines anciennes versions d'Unity 2019 ne prennent pas en charge l'ajout direct d'archives tar. Dans ce cas, vous devrez :

  1. Décompressez le fichier .tgz .
  2. Cliquez sur l'icône + dans le coin supérieur gauche de la fenêtre du gestionnaire de packages et sélectionnez Add package from disk pour ouvrir le navigateur de fichiers.
  3. Sélectionnez le dossier extrait dans le navigateur de fichiers.

manifeste.json

  1. Créez un nouveau dossier à côté du dossier Packages de votre projet et nommez-le GooglePackages .
  2. Placez les fichiers .tgz dans ce dossier.
  3. Utilisez un éditeur de texte pour ouvrir Packages/manifest.json dans le dossier de votre projet Unity.
  4. Ajoutez une entrée pour chaque package que vous souhaitez importer, en mappant le nom du package à l'emplacement sur le disque. Assurez-vous d'ajouter file: au chemin du fichier .tgz . Par exemple, si vous importez com.google.firebase.storage et ses dépendances, votre manifest.json ressemblerait à ceci :

    {
      "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. Enregistrez le fichier manifest.json .

  6. Lorsque Unity retrouve le focus, il rechargera le manifest.json et importera les packages nouvellement ajoutés.

Certaines anciennes versions d'Unity ne prennent pas en charge les fichiers .tgz dans manifest.json . Dans ce cas, vous devez :

  1. Décompressez le fichier .tgz .
  2. Modifiez votre manifest.json pour utiliser le chemin d'accès au dossier extrait, au lieu du fichier .tgz , comme ceci :

    {
      "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...
      }
    }
    

Migrer de Unity Package Manager vers les packages d'actifs

Dans certains cas, vous souhaiterez peut-être passer de l'utilisation de Unity Package Manager pour suivre les produits Firebase à l'importation de produits dans le dossier Assets .

Si vous n'êtes pas sûr de la méthode d'importation que vous utilisez, dans votre dossier de projet Unity, ouvrez le fichier Packages/manifest.json . Si le fichier contient des entrées commençant par com.google.firebase , votre projet a utilisé Unity Package Manager pour l'importation.

Pour migrer vers les packages Asset :

  1. Notez les versions actuelles du package Firebase dans votre projet et supprimez-les.

    1. Dans le menu Fenêtre , sélectionnez Gestionnaire de packages . Dans la fenêtre Gestionnaire de packages , assurez-vous que « Packages : dans le projet » est sélectionné.
    2. Notez les versions des packages Firebase importés.
    3. Cliquez sur chaque nom de package, puis cliquez sur Supprimer . Assurez-vous de supprimer le package External Dependency Manager ( .com.google.external-dependency-manager ) ainsi que les packages Firebase.
  2. Téléchargez et importez des fichiers .unitypackage de remplacement. Vous avez deux options :

    • Si vous pouvez effectuer une mise à niveau vers la dernière version de chaque package, téléchargez le fichier zip du SDK Firebase Unity et importez-le comme décrit dans Ajouter Firebase à votre projet Unity .
    • Si vous devez conserver les versions actuelles .unitypackage , vous pouvez télécharger et importer des packages individuels comme décrit ci-dessus sur cette page.

Migrer des packages d'actifs vers Unity Package Manager

Dans certains cas, vous souhaiterez peut-être passer de l'importation de produits sous le dossier Assets à l'importation et au suivi de produits avec Unity Package Manager.

Si vous n'êtes pas sûr de la méthode d'importation que vous utilisez, dans votre dossier de projet Unity, ouvrez le fichier Packages/manifest.json . Si le fichier contient des entrées commençant par com.google.firebase , votre projet utilise déjà Unity Package Manager pour l'importation.

Pour migrer vers Unity Package Manager :

  1. Assurez-vous que tous les packages Firebase et le package External Dependency Manager sont supprimés du dossier Assets , en utilisant l'une des méthodes suivantes.

    Interface utilisateur EDM4U

    1. Dans votre projet Unity ouvert, accédez à Assets > External Dependency Manager > Version Handler > Uninstall Managed Packages .
    2. Sélectionnez tous les packages Firebase et External Dependency Manager.
    3. Cliquez sur Désinstaller le package sélectionné .

    Suppression manuelle

    À l'aide des outils du système de fichiers, supprimez manuellement les dossiers suivants :

    • Assets/Editor Default Resources/Firebase
    • Assets/ExternalDependencyManager
    • Assets/Firebase
    • Assets/Parse
    • Assets/Plugins/iOS/Firebase
  2. Importez des packages à l'aide de Unity Package Manager, comme décrit ci-dessus sur cette page.