Migrieren von Firebase-Einladungen zu dynamischen Links mit benutzerdefinierter Freigabe

Firebase Invites bot sowohl einen Mechanismus zum Empfangen dynamischer Firebase-Links in Ihrer App als auch eine Funktion zum Teilen dieses Links per SMS oder E-Mail. Wir haben Firebase Invites entwickelt, um Ihnen zu helfen, Ihre App-Benutzer durch Mundpropaganda zu vergrößern, aber im Laufe der Zeit haben wir gelernt, dass Sie bessere Möglichkeiten gefunden haben, Benutzer zu ermutigen, ihre Lieblings-Apps mit ihren Freunden zu teilen, als das, was Firebase Invites heute tut.

Wir haben auch festgestellt, dass viele von Ihnen Firebase Dynamic Links immer noch als Hauptbestandteil Ihrer Benutzer-zu-Benutzer-Sharing-Lösung verwenden, obwohl die Nutzung von Firebase-Einladungen zurückgegangen ist. Daher verstärken wir unseren Fokus und verstärken unsere Bemühungen, Firebase Dynamic Links zur besten Möglichkeit zu machen, Funktionen zum Teilen von Benutzern in Ihre App zu integrieren. Als Teil dieser Umstellung haben wir die Firebase Invites-Funktion eingestellt und werden den Support ab dem 24. Januar 2020 einstellen.

Was bedeutet das und wie wirkt es sich auf mich aus?

Ab dem 24. Januar 2020 können Ihre Benutzer keine Firebase-Einladungen mehr senden oder empfangen, und der Back-End-Dienst für Einladungen beginnt, Fehlerantworten zurückzugeben, wenn Aufrufe zum Senden und Empfangen eines Einladungslinks getätigt werden. Die aktuellen SDKs beinhalten eine Fehlerbehandlung, um bei diesen Serverantworten für ordnungsgemäße Fehlerfälle zu sorgen, sodass Ihre Benutzer Ihre App ohne Absturz weiter verwenden können. Wir empfehlen jedoch, Firebase Invites nicht mehr zu verwenden und zu einer alternativen Lösung mit Firebase zu wechseln Dynamische Links mit einer benutzerdefinierten Freigabelösung.

Hier ist, wie das geht!

Erstellen Sie zunächst einen dynamischen Link , den Ihre Benutzer mit ihren Freunden teilen können. Die gute Nachricht ist, dass Sie wahrscheinlich bereits mit diesem Schritt vertraut sind, da er dem Einrichten von Firebase-Einladungen ähnelt. Sie können Ihrem dynamischen Link aber auch spezifische Parameter hinzufügen, z. B. soziale Metadaten zu Ihren Links hinzufügen, wenn Ihre Benutzer Ihre App über ein soziales Netzwerk teilen, um das Erscheinungsbild der geteilten URL anzupassen.

Erstellen Sie eine Sharing-Lösung

Erstellen Sie als Nächstes Ihre Freigabelösung, damit Ihre Benutzer diesen Link mit ihren Freunden teilen können. Was Sie hier erstellen möchten, hängt davon ab, wie Sie die Freigabefunktion bereitstellen möchten, die die vorherige in Firebase Invites ersetzt, aber für die meisten mobilen Apps können Sie bereits in die Plattform integrierte Funktionen nutzen.

Für Android besteht eine einfache Lösung, die sowohl die SMS- und E-Mail-Freigabe als auch andere beliebte soziale Netzwerke und Messaging-Apps abdeckt, darin, eine generische Absicht mit einer als Intent.ACTION_SEND festgelegten Aktion zu verwenden. Dies bietet eine bequeme Möglichkeit, Daten aus Ihrer App für jede App freizugeben, die der Benutzer installiert hat und die eine Freigabeabsicht verarbeiten kann.

Etwas Ähnliches wie das folgende Beispiel sollte hier funktionieren (es wird empfohlen, dass Sie konstante Zeichenfolgenressourcen in Ihrem eigenen Code verwenden):

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

Ein vollständigeres Beispiel und weitere Details finden Sie in dieser Anleitung zum Senden einfacher Daten an andere Apps .

Das obige Code-Snippet generiert so etwas wie den Einladungsfluss, der in den folgenden Bildschirmen gezeigt wird:

Teilen auf Android

Für iOS-Entwickler können Sie einen UIActivityViewController verwenden und den erstellten Link als Teil der Daten an den benutzerdefinierten VC übergeben. Diese Methode würde einen Freigabefluss ähnlich den folgenden Bildschirmen bereitstellen:

Teilen auf iOS

Erhalten Sie einen dynamischen Link in Ihrer App

Der letzte Schritt zum Bereitstellen der Benutzer-zu-Benutzer-Freigabe für Ihre App nach Sonnenuntergang besteht schließlich darin, einen dynamischen Link in Ihrer App zu erhalten.

Für Android bleibt dieser Vorgang derselbe, sodass Sie hier nicht viel ändern müssen. Der einzige Unterschied besteht darin, dass es ohne Firebase Invites keine Einladungs-ID mehr gibt und Sie daher den Aufruf entfernen müssten, um die Einladungs-ID über FirebaseAppInvite invite = FirebaseAppInvite.getInvitation(data) zu extrahieren, wenn Ihre App diesen Aufruf durchführt . Weitere Einzelheiten zu diesem Teil finden Sie in der Anleitung zum Empfangen dynamischer Links in Ihrer Android-App .

Für iOS würde dies den Wechsel vom FIRReceivedInvite- Objekt zum FIRDynamicLink -Objekt erfordern, die beide ähnliche Daten enthalten. Weitere Einzelheiten finden Sie in der Anleitung zum Empfangen dynamischer Links in Ihrer iOS-App .

Für Unity-Entwickler gibt es eine Reihe von Open-Source-Bibliotheken und gleichwertige Lösungen wie die oben beschriebenen, um Ihre Benutzer-zu-Benutzer-Freigabefunktionalität zu migrieren. Wenn Sie Hilfe bei der Bereitstellung einer geeigneten Lösung benötigen, wenden Sie sich bitte an die weiter unten verlinkten Support-Ressourcen.

Firebase Invites war ein großartiges Tool, auf dessen Entwicklung wir stolz sind. Mit Blick auf die Zukunft freuen wir uns darauf, Firebase Dynamic Links noch besser zu machen, damit Sie mehr Flexibilität und Kontrolle darüber haben, wie Sie Benutzer ermutigen, andere zu Ihrer App einzuladen. Wenn Sie Fragen zum Einrichten Ihrer dynamischen Firebase-Links und benutzerdefinierten Freigabelösungen haben, wenden Sie sich bitte an StackOverflow oder eines unserer zusätzlichen Supportforen .