Ir a la consola

Cómo recibir Dynamic Links con Unity

Para recibir vínculos de Firebase Dynamic Links que hayas creado, debes incluir el SDK de Dynamic Links en tu app y registrarla para procesar el evento InviteReceived.

El SDK de Unity funciona tanto en Android como en iOS, aunque se requiere un poco de configuración adicional para cada plataforma.

Antes de comenzar

Para poder usar Firebase Dynamic Links, debes crear un proyecto de Firebase y agregar los paquetes de SDK de Firebase Unity a tu proyecto de Unity.

Configuración:

Requisitos previos

Android

  • Unity 5.0 o una versión más reciente
  • Android NDK 10d o una versión más reciente

iOS

  • Unity 5.0 o una versión más reciente
  • Xcode 8.0 o una versión posterior
  • un dispositivo iOS físico
  • un certificado de APN con notificaciones de aplicación habilitadas

Si todavía no tienes un proyecto de Unity, puedes descargar una de nuestras guías de inicio rápido de ejemplo y probar una función de Firebase específica. Si usas un inicio rápido, recuerda obtener el identificador del paquete de la configuración del proyecto, ya que lo necesitarás en el próximo paso.

Configura tu app en Firebase console

Para agregar Firebase a tu app, necesitarás un proyecto y un archivo de configuración de Firebase para tu app.

Crea un proyecto en Firebase console si no lo hiciste antes. Si ya tienes un proyecto de Google asociado con tu app para dispositivos móviles, haz clic en Importar proyecto de Google. De lo contrario, haz clic en Crear proyecto nuevo.

Android

  1. Haz clic en Agrega Firebase a tu app para Android y sigue los pasos de la configuración. Si estás importando un proyecto de Google existente, es posible que esto suceda en forma automática y solo tengas que descargar el archivo de configuración.
  2. Ingresa el nombre del paquete de la app cuando se te solicite. Es importante que ingreses el nombre del paquete que usa tu app. Esto solo se puede configurar cuando agregas una app a tu proyecto de Firebase.
  3. Descarga un archivo google-services.json cuando se te indique. Puedes volver a descargar este archivo en cualquier momento.
  4. Copia este archivo en cualquier ubicación de la carpeta de elementos de tu proyecto.

iOS

  1. Haz clic en Agrega Firebase a tu app para iOS y sigue los pasos de la configuración. Si estás importando un proyecto de Google existente, es posible que esto suceda en forma automática y solo tengas que descargar el archivo de configuración.
  2. Ingresa el ID del paquete de la app cuando se te solicite. Es importante que ingreses el ID del paquete que usa tu app. Esto solo se puede configurar cuando agregas una app a tu proyecto de Firebase.
  3. Descarga un archivo GoogleService-Info.plist cuando se te indique. Puedes volver a descargar este archivo en cualquier momento.
  4. Agrega el archivo GoogleService-Info.plist al proyecto.

  5. Arrastra el archivo GoogleService-Info.plist que se descargó de Firebase console a cualquier carpeta del proyecto de Unity.

Cómo agregar el SDK de Firebase Unity a tu app

  1. Descarga el SDK de Firebase Unity.
  2. Selecciona el elemento de menú Assets > Import Package > Custom Package.
  3. Importa el paquete FirebaseInvites.unitypackage del SDK de Firebase Unity, que descargaste previamente.
  4. Cuando aparezca la ventana Import Unity Package, haz clic en el botón Import.

Compila tu app

Android

  1. Selecciona la opción de menú File > Build Settings.
  2. Selecciona Android en la lista Platform.
  3. Haz clic en Switch Platform para elegir Android como plataforma seleccionada.
  4. Espera hasta que se detenga el ícono giratorio (de compilación en proceso), que se encuentra en la esquina inferior derecha de la barra de estado de Unity.
  5. Haz clic en Build and Run.

iOS

  1. Selecciona la opción de menú File > Build Settings.
  2. Selecciona iOS en la lista Platform.
  3. Haz clic en Switch Platform para elegir iOS como plataforma seleccionada.
  4. Espera hasta que se detenga el ícono giratorio (de compilación en proceso), que se encuentra en la esquina inferior derecha de la barra de estado de Unity.
  5. Haz clic en Build and Run.

  6. Una vez que se abra Xcode, agrega UserNotifications.framework.

    1. Haz clic en el proyecto en Xcode y selecciona la pestaña General en el área Editor.
    2. Desplázate a Linked Frameworks and Libraries y haz clic en el botón + para agregar un marco de trabajo.
    3. En la ventana que aparece, desplázate a UserNotifications.framework, haz clic en esa entrada y después en Add.

Regístrate para recibir Dynamic Links entrantes

Para verificar si hay Dynamic Links, debes registrarte para el evento InviteReceived.

void Start() {
    Firebase.Invites.FirebaseInvites.InviteReceived += OnInviteReceived;
    Firebase.Invites.FirebaseInvites.InviteNotReceived += OnInviteNotReceived;
    Firebase.Invites.FirebaseInvites.ErrorReceived += OnErrorReceived;
}

void OnInviteReceived(object sender,
                      Firebase.Invites.InviteReceivedEventArgs e) {
  if (e.InvitationId != "") {
    Debug.Log("Invite received: Invitation ID: " + e.InvitationId);
    Firebase.Invites.FirebaseInvites.ConvertInvitationAsync(
        e.InvitationId).ContinueWith(HandleConversionResult);
  }
  if (e.DeepLink.ToString() != "") {
    Debug.Log("Invite received: Deep Link: " + e.DeepLink);
  }
}

void OnInviteNotReceived(object sender, System.EventArgs e) {
  Debug.Log("No Invite or Deep Link received on start up");
}

void OnErrorReceived(object sender,
                     Firebase.Invites.InviteErrorReceivedEventArgs e) {
  Debug.LogError("Error occurred received the invite: " + e.ErrorMessage);
}