Migrazione da inviti Firebase a link dinamici con condivisione personalizzata

Firebase Invites ha fornito sia un meccanismo per ricevere Firebase Dynamic Links nella tua app sia una funzionalità per condividere il link via SMS o email. Abbiamo sviluppato Firebase Invites per aiutarti ad aumentare gli utenti della tua app tramite il passaparola, ma nel tempo abbiamo appreso che hai trovato modi migliori per incoraggiare gli utenti a condividere le loro app preferite con gli amici, oltre a quanto fa Firebase Invites oggi.

Abbiamo anche notato che, sebbene l'utilizzo di Firebase Invites sia diminuito, molti di voi lo utilizzavano ancora come ingrediente chiave della vostra soluzione di condivisione tra utenti.Firebase Dynamic Links Di conseguenza, stiamo rafforzando il nostro impegno e aumentando il nostro impegno per fare di Firebase Dynamic Links il modo migliore per creare funzionalità di condivisione tra utenti nella tua app. Nell'ambito di questo passaggio, abbiamo ritirato la funzionalità Firebase Dynamic Links e ne interromperemo il supporto a partire dal 24 gennaio 2020.Firebase Invites

Che cosa significa e che cosa comporta per me?

A partire dal 24 gennaio 2020, i tuoi utenti non potranno più inviare o ricevere Firebase Invites e il servizio di backend per gli inviti inizierà a restituire risposte di errore quando effettueranno chiamate per inviare e ricevere un link di invito. Gli SDK attuali includono la gestione degli errori per garantire casi di errore graduali per queste risposte del server, in modo che gli utenti possano continuare a utilizzare la tua app senza arresti anomali. Tuttavia, ti consigliamo di non utilizzare più Firebase Invites e di passare a una soluzione alternativa che utilizzi Firebase Dynamic Links con una soluzione di condivisione personalizzata.

Ecco come fare.

Innanzitutto, crea un Dynamic Link che i tuoi utenti possano condividere con i loro amici. La buona notizia è che probabilmente hai già familiarità con questo passaggio perché è simile alla configurazione di Firebase Invites. Tuttavia, puoi anche aggiungere parametri specifici al link dinamico, ad esempio aggiungere metadati social ai tuoi link se i tuoi utenti condividono la tua app tramite un social network per personalizzare l'aspetto dell'URL condiviso.

Creare una soluzione di condivisione

A questo punto, crea la tua soluzione di condivisione in modo che gli utenti possano condividere il link con i loro amici. Ciò che vuoi creare qui varia a seconda di come vuoi fornire la funzionalità di condivisione che sostituirà quella precedente in Firebase Invites, ma per la maggior parte delle app mobile puoi sfruttare le funzionalità già integrate nella piattaforma.

Per Android, una soluzione semplice che copre sia la condivisione di SMS ed email sia altre app di messaggistica e social network popolari è utilizzare un'intenzione generica con un insieme di azioni impostato su Intent.ACTION_SEND. In questo modo, hai un modo pratico per condividere i dati della tua app con qualsiasi app installata dall'utente che può gestire un'intenzione di condivisione.

Dovrebbe funzionare qualcosa di simile all'esempio seguente (consigliamo di utilizzare risorse di stringhe costanti nel codice):

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

Per un esempio più completo e ulteriori dettagli, consulta questa guida per inviare dati semplici ad altre app.

Lo snippet di codice riportato sopra genererà un flusso di invito simile a quello mostrato nelle schermate seguenti:

Condivisione su Android

Gli sviluppatori iOS possono utilizzare un UIActivityViewController, passando il link creato nell'ambito dei dati al VC personalizzato. Questo metodo fornisce un flusso di condivisione simile alle schermate riportate di seguito:

Condivisione su iOS

Ricevere un Dynamic Link nella tua app

Infine, l'ultimo passaggio per fornire la condivisione tra utenti per la tua app dopo il ritiro è ricevere un Dynamic Link nella tua app.

Per Android, la procedura rimane invariata, quindi non dovrai apportare molte modifiche. L'unica differenza è che, senza Firebase Invites, non esiste più un ID invito, quindi dovrai rimuovere la chiamata per estrarre l'ID invito tramite Firebase Invites, se la tua app effettua questa chiamata.FirebaseAppInvite invite = FirebaseAppInvite.getInvitation(data) Per maggiori dettagli su questo aspetto, consulta la guida su come ricevere i link dinamici nella tua app per Android.

Per iOS, è necessario passare dall'oggetto FIRReceivedInvite all'oggetto FIRDynamicLink, entrambi contenenti dati simili. Per maggiori dettagli, consulta la guida su come ricevere i link dinamici nella tua app per iOS.

Per gli sviluppatori Unity, esistono diverse librerie open source e soluzioni equivalenti come quelle descritte sopra per eseguire la migrazione della funzionalità di condivisione tra utenti. Se hai bisogno di assistenza per trovare una soluzione adatta, contatta le risorse di assistenza indicate di seguito.

Firebase Invites è uno strumento fantastico che siamo orgogliosi di aver creato. In vista del futuro, ci impegniamo a migliorare ancora Firebase Dynamic Links per offrirti maggiore flessibilità e controllo su come incoraggiare gli utenti a invitare altri utenti nella tua app. Se hai domande sulla configurazione di Firebase Dynamic Links e delle soluzioni di condivisione personalizzata, contattaci su StackOverflow o su uno dei nostri ulteriori forum di assistenza.