Check out what’s new from Firebase@ Google I/O 2021, and join our alpha program for early access to the new Remote Config personalization feature. Learn more

Migrer des invitations Firebase vers des liens dynamiques avec le partage personnalisé

Firebase Invites a fourni à la fois un mécanisme pour recevoir des liens dynamiques Firebase dans votre application, ainsi qu'une fonctionnalité pour partager ce lien par SMS ou e-mail. Nous avons développé Firebase Invites pour vous aider à développer le nombre d'utilisateurs de votre application grâce au bouche à oreille, mais au fil du temps, nous avons appris que vous avez trouvé de meilleurs moyens d'encourager les utilisateurs à partager leurs applications préférées avec leurs amis, au-delà de ce que Firebase Invites fait aujourd'hui.

Nous avons également constaté que même si l'utilisation des invitations Firebase a diminué, beaucoup d'entre vous utilisaient toujours Firebase Dynamic Links comme ingrédient clé de votre solution de partage d'utilisateur à utilisateur. C'est pourquoi nous renforçons notre attention et augmentons nos efforts pour faire de Firebase Dynamic Links le meilleur moyen de créer des capacités de partage d'utilisateur à utilisateur dans votre application. Dans le cadre de ce changement, nous avons abandonné la fonctionnalité d'invitations Firebase et interromprons l'assistance à partir du 24 janvier 2020 .

Qu'est-ce que cela signifie et comment cela m'impacte-t-il ?

À partir du 24 janvier 2020, vos utilisateurs ne pourront plus envoyer ou recevoir d'invitations Firebase, et le service backend d'invitations commencera à renvoyer des réponses d'erreur lors des appels pour envoyer et recevoir un lien d'invitation. Les SDK actuels incluent la gestion des erreurs pour garantir des cas d'échec gracieux pour ces réponses de serveur, afin que vos utilisateurs puissent continuer à utiliser votre application sans plantage, mais nous vous recommandons de ne plus utiliser Firebase Invites et de passer à une solution alternative utilisant Firebase Liens dynamiques avec une solution de partage personnalisée.

Voici comment faire ça !

Tout d'abord, créez un lien dynamique que vos utilisateurs peuvent partager avec leurs amis. La bonne nouvelle est que vous connaissez probablement déjà cette étape, car elle est similaire à la façon dont vous configurez les invitations Firebase. Mais vous pouvez également ajouter des paramètres spécifiques à votre lien dynamique, tels que l' ajout de métadonnées sociales à vos liens si vos utilisateurs partagent votre application via un réseau social pour personnaliser l'apparence de l'URL qui est partagée.

Créer une solution de partage

Ensuite, créez votre solution de partage pour que vos utilisateurs puissent partager ce lien avec leurs amis. Ce que vous voudrez créer ici variera en fonction de la manière dont vous souhaitez fournir la fonctionnalité de partage qui remplacera la précédente dans Firebase Invites, mais pour la plupart des applications mobiles, vous pouvez profiter des fonctionnalités déjà intégrées à la plate-forme.

Pour Android, une solution simple qui couvre à la fois le partage de SMS et d'e-mails, ainsi que d'autres applications de réseaux sociaux et de messagerie populaires, consiste à utiliser une intention générique avec une action définie comme Intent.ACTION_SEND . Cela offre un moyen pratique de partager des données de votre application vers n'importe quelle application installée par l'utilisateur et capable de gérer une intention de partage.

Quelque chose de similaire à l'exemple suivant devrait fonctionner ici (en vous recommandant d'utiliser des ressources de chaîne constantes dans votre propre code) :

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)));

Pour un exemple plus complet et plus de détails, consultez ce guide pour envoyer des données simples à d'autres applications .

L'extrait de code ci-dessus générera quelque chose comme le flux d'invitation affiché dans les écrans ci-dessous :

Partage sur Android

Pour les développeurs iOS, vous pouvez utiliser un UIActivityViewController , en transmettant le lien créé dans le cadre des données au VC personnalisé. Cette méthode fournirait un flux de partage similaire aux écrans ci-dessous :

Partage sur iOS

Recevez un lien dynamique dans votre application

Enfin, la dernière étape pour fournir un partage d'utilisateur à utilisateur pour votre application après le coucher du soleil consiste à recevoir un lien dynamique dans votre application.

Pour Android, ce processus reste le même, vous n'aurez donc pas besoin de changer grand-chose ici. La seule différence est que sans Firebase Invites, il n'y aura plus d'ID d'invitation, et vous devrez donc supprimer l'appel pour extraire l'ID d'invitation via FirebaseAppInvite invite = FirebaseAppInvite.getInvitation(data) , si votre application effectue cet appel . Pour plus de détails sur cette pièce, veuillez consulter le guide sur la réception de liens dynamiques dans votre application Android .

Pour iOS, cela nécessiterait de passer de l'objet FIRReceivedInvite à l'objet FIRDynamicLink , qui contiennent tous deux des données similaires. Veuillez consulter le guide sur la réception de liens dynamiques dans votre application iOS pour plus de détails.

Pour les développeurs Unity, il existe un certain nombre de bibliothèques open source et de solutions équivalentes à celles décrites ci-dessus pour migrer votre fonctionnalité de partage d'utilisateur à utilisateur. Si vous avez besoin d'aide pour fournir une solution appropriée, veuillez contacter les ressources d'assistance liées ci-dessous.

Firebase Invites est un excellent outil que nous sommes fiers d'avoir créé. Alors que nous regardons vers l'avenir, nous sommes ravis de redoubler d'efforts pour améliorer encore plus Firebase Dynamic Links afin que vous ayez plus de flexibilité et de contrôle sur la façon dont vous encouragez les utilisateurs à inviter d'autres personnes dans votre application. Si vous avez des questions sur la configuration de vos Firebase Dynamic Links et des solutions de partage personnalisées, veuillez contacter StackOverflow ou l'un de nos forums d'assistance supplémentaires .