Migrar de Firebase Invites a Dynamic Links con uso compartido personalizado

Firebase Invites proporcionó un mecanismo para recibir Firebase Dynamic Links en su aplicación, así como una función para compartir ese enlace por SMS o correo electrónico. Desarrollamos Firebase Invites para ayudarte a aumentar los usuarios de tu aplicación a través del boca a boca, pero con el tiempo, aprendimos que encontraste mejores formas de alentar a los usuarios a compartir sus aplicaciones favoritas con sus amigos, más allá de lo que Firebase Invites hace hoy.

También vimos que, si bien el uso de Firebase Invites disminuyó, muchos de ustedes seguían usando Firebase Dynamic Links como ingrediente clave de su solución para compartir de usuario a usuario. Por lo tanto, estamos fortaleciendo nuestro enfoque y aumentando nuestros esfuerzos para hacer de Firebase Dynamic Links la mejor manera de crear capacidades para compartir de usuario a usuario en su aplicación. Como parte de este cambio, hemos dejado de usar la función Firebase Invites y suspenderemos la compatibilidad a partir del 24 de enero de 2020 .

¿Qué significa esto y cómo me afecta?

A partir del 24 de enero de 2020, tus usuarios ya no podrán enviar ni recibir Firebase Invites, y el servicio backend de invitaciones comenzará a devolver respuestas de error al realizar llamadas para enviar y recibir un enlace de invitación. Los SDK actuales incluyen manejo de errores para ayudar a garantizar casos de falla correctos para estas respuestas del servidor, de modo que sus usuarios puedan continuar usando su aplicación sin fallar, pero le recomendamos que deje de usar Firebase Invites y cambie a una solución alternativa usando Firebase. Enlaces dinámicos con una solución personalizada para compartir.

¡Aquí se explica cómo hacerlo!

Primero, cree un enlace dinámico que sus usuarios puedan compartir con sus amigos. La buena noticia es que probablemente ya esté familiarizado con este paso porque es similar a cómo configura Firebase Invites. Pero también puedes agregar parámetros específicos a tu enlace dinámico, como agregar metadatos sociales a tus enlaces si tus usuarios comparten tu aplicación a través de una red social para personalizar la apariencia de la URL que se comparte.

Construya una solución para compartir

A continuación, cree su solución para compartir para que sus usuarios puedan compartir ese enlace con sus amigos. Lo que querrá crear aquí variará según cómo desee proporcionar la función para compartir que reemplazará a la anterior en Firebase Invites, pero para la mayoría de las aplicaciones móviles puede aprovechar las funciones ya integradas en la plataforma.

Para Android, una solución simple que cubre tanto el uso compartido de SMS como de correo electrónico, así como otras redes sociales y aplicaciones de mensajería populares, es utilizar una intención genérica con una acción configurada como Intent.ACTION_SEND . Esto proporciona una manera conveniente de compartir datos de su aplicación con cualquier aplicación que el usuario haya instalado y que pueda manejar una intención de compartir.

Algo similar al siguiente ejemplo debería funcionar aquí (se recomienda utilizar recursos de cadena constante en su propio código):

Intent sendIntent = new Intent();
sendIntent.setAction(Intent.ACTION_SEND);
sendIntent.putExtra(Intent.EXTRA_TEXT, "Here's a new lesson for" +
        " learning more Miwok vocabulary:\n\n" + dynamicLink);
sendIntent.putExtra(Intent.EXTRA_SUBJECT, "Let's Learn Miwok!");
sendIntent.setType("text/plain");
startActivity(Intent.createChooser(sendIntent,
        getResources().getText(R.string.send_to)));

Para obtener un ejemplo más completo y más detalles, consulte esta guía para enviar datos simples a otras aplicaciones .

El fragmento de código anterior generará algo parecido al flujo de invitación que se muestra en las pantallas siguientes:

Compartir en Android

Para los desarrolladores de iOS, pueden usar UIActivityViewController y pasar el enlace creado como parte de los datos al VC personalizado. Este método proporcionaría un flujo de intercambio similar a las pantallas siguientes:

Compartir en iOS

Recibe un Enlace Dinámico en tu aplicación

Finalmente, el último paso para compartir su aplicación de usuario a usuario después de la puesta del sol es recibir un enlace dinámico en su aplicación.

Para Android, este proceso sigue siendo el mismo, por lo que no necesitarás cambiar mucho aquí. La única diferencia es que sin Firebase Invites, ya no habrá un ID de invitación, por lo que deberás eliminar la llamada para extraer el ID de invitación a través de FirebaseAppInvite invite = FirebaseAppInvite.getInvitation(data) , si tu aplicación realiza esa llamada. . Para obtener más detalles sobre este artículo, consulte la guía sobre cómo recibir enlaces dinámicos en su aplicación de Android .

Para iOS, esto requeriría cambiar del objeto FIRReceivedInvite al objeto FIRDynamicLink , ambos contienen datos similares. Consulte la guía sobre cómo recibir enlaces dinámicos en su aplicación iOS para obtener más detalles.

Para los desarrolladores de Unity, existen varias bibliotecas de código abierto y soluciones equivalentes a las descritas anteriormente para migrar su funcionalidad de uso compartido de usuario a usuario. Si necesita ayuda para proporcionar una solución adecuada, comuníquese con los recursos de soporte vinculados más abajo.

Firebase Invites ha sido una gran herramienta que estamos orgullosos de haber creado. Mientras miramos hacia el futuro, estamos emocionados de redoblar esfuerzos para mejorar aún más Firebase Dynamic Links para que tengas más flexibilidad y control sobre cómo animas a los usuarios a invitar a otros a tu aplicación. Si tiene alguna pregunta sobre la configuración de Firebase Dynamic Links y las soluciones personalizadas para compartir, comuníquese con StackOverflow o cualquiera de nuestros foros de soporte adicionales .