En vez de descargar un archivo .zip
de gran tamaño que contenga todos los archivos .unitypackage
para .NET 3.X y .NET 4.X, puedes descargar paquetes individuales del
sitio de las API de Google para Unity.
En el sitio, encontrarás lo siguiente:
- Archivos
.unitypackage
de .NET 4.X individuales para importar como paquetes de elementos - Archivos
.tgz
individuales para importar con Unity Package Manager
Estos recursos resultan particularmente útiles cuando usas un solo producto de Firebase en tu app, ya que los archivos .unitypackage
individuales contienen todas las dependencias necesarias, y los archivos .tgz
aparecen junto con los archivos .tgz
relacionados de los que dependen.
En esta página, se proporcionan instrucciones relacionadas con Unity Package Manager, por lo que es una buena idea aprender sobre la herramienta con la documentación de Unity.
Importa paquetes de Firebase como elementos
Cuando importes productos de Firebase desde archivos .unitypackage
descargados del sitio de las API de Google para Unity, ten en cuenta lo siguiente:
Si utilizas varios productos de Firebase en tu proyecto, debes descargarlos y actualizarlos todos a la misma versión.
No mezcles métodos de importación en un proyecto. Es decir, no importes productos de Firebase tanto con el flujo de paquetes de elementos como con el flujo de Unity Package Manager en un mismo proyecto.
Después de la descarga, haz lo siguiente para importar:
Abre tu proyecto de Unity, ve a Assets > Import Package > Custom Package.
En la ventana Import Unity Package, haz clic en Import.
Importa paquetes de Firebase con Unity Package Manager
Cuando importes productos de Firebase desde archivos .tgz
descargados del sitio de las API de Google para Unity, ten en cuenta lo siguiente:
Este método solo está disponible a partir de la versión 2018.3.
Si utilizas varios productos de Firebase en tu proyecto, debes descargarlos y actualizarlos todos a la misma versión.
No mezcles métodos de importación en un proyecto. Es decir, no importes productos de Firebase tanto con el flujo de paquetes de elementos como con el flujo de Unity Package Manager en un mismo proyecto.
Las dependencias de los archivos
.tgz
de cada producto incluyen vínculos junto con sus propios archivos.tgz
. Debes descargar e importar el archivo.tgz
del producto y los archivos de dependencia.tgz
en el orden correcto:- External Dependency Manager (
com.google.external-dependency-manager
) - Firebase Core (
com.google.firebase.app
) - Los productos de Firebase que uses en tu proyecto (si utilizas Realtime Database o Cloud Storage, importa Authentication [
com.google.firebase.auth
] primero)
- External Dependency Manager (
Después de la descarga, importa los archivos .tgz
a tu proyecto mediante uno de los siguientes métodos:
IU de Package Manager
- Abre la ventana de Unity Package Manager.
- Haz clic en el ícono
+
ubicado en la esquina superior izquierda de la ventana de Package Manager y seleccionaAdd package from tarball
para abrir el navegador de archivos. - Selecciona el archivo tarball que quieras en el navegador de archivos.
Algunas versiones anteriores de Unity 2019 no admiten agregar archivos tarball de manera directa. En este caso, deberás hacer lo siguiente:
- Descomprime el archivo
.tgz
. - Haz clic en el ícono
+
ubicado en la esquina superior izquierda de la ventana de Package Manager y seleccionaAdd package from disk
para abrir el navegador de archivos. - Selecciona la carpeta extraída en el navegador de archivos.
manifest.json
- Crea una carpeta nueva junto a la carpeta
Packages
de tu proyecto y nómbralaGooglePackages
. - Coloca los archivos
.tgz
en ella. - Usa un editor de texto para abrir
Packages/manifest.json
en la carpeta de tu proyecto de Unity. Agrega una entrada para cada paquete que quieras importar y asigna el nombre del paquete a la ubicación en el disco. Asegúrate de agregar
file:
a la ruta de acceso del archivo.tgz
. Por ejemplo, si quieres importarcom.google.firebase.storage
y sus dependencias, tu archivomanifest.json
tendría el siguiente aspecto:{ "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... } }
Guarda el archivo
manifest.json
.Cuando Unity vuelva a estar en primer plano, se volverá a cargar
manifest.json
y, luego, se importarán los paquetes recién agregados.
Algunas versiones anteriores de Unity no admiten archivos .tgz
en el archivo manifest.json
.
En este caso, haz lo siguiente:
- Descomprime el archivo
.tgz
. Edita tu archivo
manifest.json
para usar la ruta de acceso a la carpeta extraída en vez del archivo.tgz
, de la siguiente manera:{ "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... } }
Migra de Unity Package Manager a paquetes de elementos
En algunos casos, es posible que quieras dejar de usar Unity Package Manager para supervisar los productos de Firebase y comenzar a importar los productos en la carpeta Assets
.
Si no sabes qué método de importación usas, abre el archivo Packages/manifest.json
en la carpeta de tu proyecto de Unity. Si el archivo contiene entradas que comienzan con com.google.firebase
, se usó Unity Package Manager en la instalación del proyecto.
Sigue estos pasos para migrar a paquetes de elementos:
Toma nota de las versiones actuales de los paquetes de Firebase de tu proyecto y quítalas.
- En el menú Window, selecciona Package Manager. En la ventana Package Manager, asegúrate de que esté seleccionada la opción “Packages: In Project”.
- Toma nota de las versiones de los paquetes de Firebase importados.
- Haz clic en el nombre de cada paquete y, luego, en Remove. Asegúrate de quitar el
paquete External Dependency Manager (
.com.google.external-dependency-manager
) y los paquetes de Firebase.
Descarga e importa los archivos
.unitypackage
de reemplazo. Tienes estas dos opciones:- Si puedes actualizar a la versión más reciente de cada paquete, descarga el archivo ZIP del SDK de Firebase Unity y, luego, impórtalo como se describe en Agrega Firebase a tu proyecto de Unity.
- Si necesitas conservar las versiones actuales de
.unitypackage
, puedes descargar e importar paquetes individuales como se describió anteriormente en esta página.
Migra desde paquetes de elementos a Unity Package Manager
En algunos casos, tal vez quieras dejar de instalar productos en la carpeta Assets
y comenzar a instalar y supervisar los productos con Unity Package Manager.
Si no sabes qué método de importación usas, abre el archivo Packages/manifest.json
en la carpeta de tu proyecto de Unity. Si el archivo contiene entradas que comienzan con com.google.firebase
, ya usas Unity Package Manager para la importación del proyecto.
Sigue estos pasos para migrar a Unity Package Manager:
Asegúrate de quitar todos los paquetes de Firebase y el paquete External Dependency Manager de la carpeta
Assets
mediante cualquiera de los siguientes métodos.IU de EDM4U
- En el proyecto abierto de Unity, ve a Assets > External Dependency Manager > Version Handler > Uninstall Managed Packages.
- Selecciona todos los paquetes de Firebase y External Dependency Manager.
- Haz clic en Uninstall Selected Package.
Eliminación manual
Con las herramientas del sistema de archivos, borra manualmente las siguientes carpetas:
Assets/Editor Default Resources/Firebase
Assets/ExternalDependencyManager
Assets/Firebase
Assets/Parse
Assets/Plugins/iOS/Firebase
Importa los paquetes con Unity Package Manager como se describió anteriormente en esta página.