El Canal de Alejo

Bienvenidos a nuestro sitio oficial...

Películas, deportes en vivo, videojuegos...

Consolas, ROMs, series, cursos, tutoriales...

creación de sitios web y mas...

El Canal de Alejo

Bienvenidos a nuestro sitio oficial...

Películas, deportes en vivo, videojuegos...

Consolas, ROMs, series, cursos, tutoriales...

creación de sitios web y mas...

Disfruta de nuestro contenido...

PASO A PASO para integrar Google Authentication con Firebase para Sign In with Google en Unity App

1 marzo, 2022 Tutoriales, Unity

ATENCION !!! ANTES DE EMPEZAR REALIZA UN BACKUP DE TU PROYECTO O TRABAJA DESDE UN RAMA ACTUALIZABLE POR SI LOS ARCHIVOS A INSTALARSE VUELVEN CORRUPTO EL PROYECTO.

  1. Tener un proyecto en Unity donde en el Build Settings se tenga Switch Android para Build.
  2. Vamos a crear Huella digital para la aplicación yendo a proyect settings publishing Settings/ Keystore Manager Botón / Create New / In Dedicated Location / la creamos en la raíz de la carpeta de nuestro proyecto…. user.keystore
    creamos un password para esta keystore y más abajo donde dice Proyect Key: EN ALIAS DEBE DE LLAMARSE COMO EL ID PROYECT CON EL QUE SE CREA EN FIREBASE Y la contraseña para evitar errores coloca la misma del keystore.
  3. Aprovechamos que estamos en proyect Settings y entramos a Other Settings / identification / y copiamos o de una vez colocamos el nombre del package ej: com.mycompany.developed.myproyectAppName más adelante lo necesitaremos copiar al crear el proyecto en Firebase.
  4. Ahora necesitamos sacar la huella digital(finger print) del app el cual es un consecutivo alfanumerico SHA1 certificate.

– Vamos a abrir la consola de windows (Win + R….cmd ->enter) necesitamos ubicar donde está el JDK o openJDK/bin en tu equipo una vez lo sepas copia la ruta al directorio en el portapapeles o ctrl+c y en la consola escribes cd luego pegas y después enter…

– Después de hallar la ubicacion del JAVA, y que la user.keystore este en la ubicacion de tu proyecto… en la consola estando en el /bin del JDK escribir la linea de comando (keytool -list -keystore “C:\Users\myUser\CarpetaProyecto\user.keystore”) Seguido de Enter, luego allí te pedirá contraseña para poder ver la huella, ingresas la que diste al momento de crearla y te mostrará el código alfanumérico copia todo, ya que más adelante lo vas a necesitar.

Listo ya tenemos información para iniciar configuraciones en Firebase Web
Ahora necesitamos los packages para Unity los using o dependencias.

Recuerda saltar la publicidad así al descargar:

Cada Package se importará en el siguiente orden.
1. Link external-dependency-manager : Descargar
2. Link google-signin-plugin : Descargar
3. Link Firebase Auth SDK: Descargar

Recuerda saltar la publicidad así al descargar:


Después de importar los packages se puede forzar las dependencias(Solo si no muestra Sucessfull Dependencies Updated), dando en Assets / External Dependency Manager / Android Resolver / Force Resolve.

5. Vamos a firebase web creamos un nuevo proyecto para Authentication nos pedirán información que ya teníamos previamente recolectada.
OJO! al agregar el app en firebase el nombre quedará sin espacios en ID proyect ese nombre debe ser el mismo del alias donde creamos el keystore en unity. Antes de agregar el app firebase pide el package Name ya lo teníamos también. Después de agregada ya dejará colocarle una huella digital(finger print) lo agregamos también y guardar. Aquí en este espacio nos dejará descargar el archivo (google-services.json) lo agregamos al proyecto unity en Assets.

6. Descargamos el archivo de prueba GoogleSignInDemo.cs y lo agregamos a los Assets.
link: Descargar

Ahora siguen las pruebas:
Creamos un UI button y un texto
después un empty GameObject y addcomponent el script GoogleSignInDemo.cs
instanciamos el texto y copiamos el código del cliente(Web ID Client)… Esta información la podemos encontrar dentro del archivo google-services descargado o entrando a APIs / credenciales en https://console.cloud.google.com/apis/
Y el evento del button le instanciamos el GameObject creado para llamar la función SigninWithGoogle().

Antes de Build recuerda las contraseñas estén puestas en la keystore y ponlo a correr en un dispositivo compatible y debería funcionar.

Errores frecuentes:
1. Alias del keystore debe ser el mismo del nombre del proyecto firebase sin espacios y minúsculas
2. Si las dependencias no se actualizan adecuadamente cuando copies el archivo script de prueba te mandara error en las líneas Using.
3. Puede que se pierda la conexión con el path del SDK o error JAVA_HOME. La solución es ir a edit/dependencias en unity … Desmarcar todos los Paths y luego marcarlos nuevamente las dependencias se actualizarán y dejara hacer build al app nuevamente.
4. Tener presente las versiones de API del SDK que si esten instaladas, de no ser asi se recomienda por medio del AndroidStudio en Tools SDK Manager descargar las APIs necesarias y luego cambiar el path en Unity por donde se instalaron las nuevas del AndroidStudio.
5. Si manda el app al móvil correctamente y corre, pero al dar en el botón muestra información y se cierra el app automáticamente y cuando vas a la consola de usuarios registrados en firebase y no aparece nada… Te recomiendo eliminar el app del proyecto en firebase y agregarlo de nuevo teniendo presente cada paso.

Write a comment