Wie kann ich App-Einladungen richtig verwenden und verfolgen?

Hintergrund

Google ermöglicht es, App-Einladungen durchzuführen und auch zu verfolgen, wie gut sie Ihre App-Installationen verbessern:

  • Facebook Android sdk werfen fehlende redirect uri auf Authetication
  • Wie bekomme ich eine Liste Position Position, indem Sie auf die Schaltfläche drin?
  • Wie Center Center in Android Action Bar
  • Wie füge ich 2 Tasten horizontal mit 50% Breite für jeden in Android?
  • DialogFragment.getDialog gibt null zurück
  • Wie mache ich ein ImageView mit abgerundeten Ecken?
  • Das Problem

    Ich habe eine einfache App eingeladen, und es scheint, Menschen verwenden es, mit diesem Code:

    public static Intent getAppInviteIntent(Context context) { return new AppInviteInvitation.IntentBuilder(title,appName).setCustomImage(imageUri).setMessage(message).setCallToActionText(download).build(); } startActivityForResult(getAppInviteIntent(this), GOOGLE_APP_INVITES_REQUEST_CODE); 

    Dies funktioniert, aber auf der Webseite von Analytics kann ich keinen Weg finden, die Statistiken der App-Einladung zu zeigen, und das ist, obwohl sie sagen, dass es automatisch ist ( hier ). Leider, auch was ich gefunden habe, scheinen ziemlich alt und sie verwenden veraltete Funktionen.

    Was ich versucht habe

    Ich dachte, dass es vielleicht gar nicht ganz automatik ist (weil das Tutorial hier einen extra Code für den Empfängerteil hat ), und dass wir vielleicht einen Code hinzufügen müssen,

    Wenn der Benutzer eine Einladung annimmt und die App installiert, wird getInvitation (GoogleApiClient, Activity, Boolean) den Einladungsstatus aktualisiert und die Einladungsdaten in einer von AppInviteInvitationResult zugegriffenen Absicht mit getInvitationIntent ()

    Bei der Betrachtung der Google-Probe ( hier ) habe ich festgestellt, dass sie 2 Aktivitäten erstellt haben. Einer ist die Haupttätigkeit, die einen Aufruf von "getInvitation" hat, und ein anderer heißt "DeepLinkActivity" und behandelt tiefe Links (was wohl für zusätzliche Daten, wie Coupons) ist.

    Ich habe auch einige stackOverflow Fragen über die Tracking (wie hier ) gefunden, aber alles, was ich sehe ist, dass die Leute nicht gelingen, Tracking noch.

    Die Fragen

    1. Was ist der minimale Code, der benötigt wird, um die Einladungen zu verfolgen und wie gut sie arbeiten, wie auf dem Video gezeigt? Was sollte in der Analytics-Seite selbst konfiguriert werden? Ich benutze keine tiefe Verknüpfung derzeit, also will ich es nicht benutzen.

    2. Es scheint, dass Google die App-Einladungsfunktion auf "firebase" gradle repositories verschoben hat. Ist es ein Muss? Was sind die Vorteile? Wir verwenden derzeit die vorherigen ("com.google.android.gms: play-services-appinvite: …"). Das Dashboard von FireBase scheint nicht so viel UI für Analytics wie Google Analytics einzuschließen. Ganz zu schweigen von app-invites.

    3. Wenn die Antwort auf # 1 ist, dass ich "getInvitationIntent" verwenden muss, muss es auf der Hauptaktivität der App sein? Muss es überhaupt eine Aktivität haben (vielleicht broadcastReceiver?)?

    4. Es scheint, dass es möglich ist, auch zu IOS zu laden (wie hier und hier gezeigt , mit "setOtherPlatformsTargetApplication"). Ist das richtig? Wie funktioniert es? Was passiert, wenn ein IOS-Benutzer auf den Link klickt? Was soll in den Parameter "clientId" gestellt werden und wo bekomme ich das?

    5. Hat G + App-Einladungen? Wenn ja, hat es auch Analytik?

  • Android: Mit selector, um Hintergrundfarbe für die Bildansicht festzulegen
  • Wie zeichne ungefüllte Figuren auf Android?
  • Erhöhe den Wert eines Datensatzes in der Android- / sqlite-Datenbank
  • Wie setze ich Layout und Textgröße auf DP im Programm?
  • YouTube-Api: Nicht verbunden. Rufen Sie connect () an und warten Sie auf onConnected (), um aufgerufen zu werden
  • Anzeige Anzeige in AndEngine
  • 2 Solutions collect form web for “Wie kann ich App-Einladungen richtig verwenden und verfolgen?”

    Große fragen Ich werde mein Bestes tun, um alles zu beantworten. Bitte fragen Sie, ob Sie eine Klärung benötigen.

    Analytics-Tracking erfordert eine Tracking-ID, die Sie mit setGoogleAnalyticsTrackingId (String trackingId) einstellen müssen, was ich in Ihrem Beispiel nicht sehe. Diese Tracking-ID wird dann an die Downstream-Events übergeben, die Analytics-Tracking-Events für Sie aufzeichnen:

    • Wenn Einladungen gesendet werden (sowohl E-Mail als auch SMS).
    • Wenn der eingeladene Benutzer die Einladung annimmt, indem er auf den Einladungslink oder die Schaltfläche klickt.
    • Wenn der Entwickler callInvitation ()
    • Wenn der Entwickler callInvitation ()

    Also, um Ihre spezifischen Fragen zu beantworten, hier geht es:

    1. Fügen Sie einfach Ihre Tracking-ID an den Builder, wie oben beschrieben, und alle Tracking-Ereignisse werden gemeldet werden. Keine Notwendigkeit für eine Deeplink, das ist optional auf Einladungen.
    2. Ja, appinvites api wird auf Firebase kopiert, während das Original beibehalten wird. Denn jetzt sind sie genau das gleiche. Zukünftige Verbesserungen werden in Firebase sein, also migrieren, wenn du Zeit hast.
    3. GetInvitationIntent () wird auf das Ergebnis zurückgerufen, das im Rückruf von getInvitation () zurückgegeben wird, also sollte der Rückruf innerhalb einer Aktivität sein. Auch, da Sie nur eine Einladung sofort nach dem Start erwarten, müssen Sie wirklich nur die Hauptaktivität und jede Aktivität, die von Absichtsfilter gestartet werden würde, die auf dem Deeplink auslösen, einchecken. Klingt wie man keine Deeplinks benutzt, also nur die Haupttätigkeit. Im Allgemeinen sollten Sie getInvitation () von allen Aktivitäten aufrufen, die direkt von einer Einladung gestartet werden können. So legen Sie fest, ob Ihre App von einer Einladung gestartet wird.
    4. Ja, Einladungen können Cross-Plattform in beide Richtungen gehen, iOS -> Android und Android -> iOS. Sie müssen beide Apps im selben Projekt in console.developers.google.com definieren, was notwendig ist, um sie zu verknüpfen. Wenn es mehr als eine iOS App im Projekt gibt, ist dieser AIP-Aufruf notwendig, um die iOS App zu disambiguieren, die mit der Android App gepaart ist. Der ClientID-Parameter wird in der Konsole generiert, wenn Sie die OAuth-Client-ID mit dem Pulldown-Menü aus dem Anmeldeinformationenbereich erstellen.
    5. Es gibt keine separaten G + Einladungen.

    Antworten:

    1. Die Firebase Dynamic Links auf Android- Dokumentation erklärt, wie die Analytics-Daten direkt in der Firebase-Konsole angezeigt werden. Der kritische Schritt ist, den Firebase-Setup-Anweisungen zu folgen, vor allem:

    // HINZUFÜGEN DIESES NACH DEM BODEN

    Plugin anwenden: 'com.google.gms.google-services'

    Die Firebase-Analytics-Integration wurde aus der Legacy-Integration gestrafft, die eine Tracking-ID benötigt. Jetzt mit Firebase nur Setup und ein Aufruf von getInvitation () benötigt werden. Keine zusätzlichen Code- oder Tracking-IDs erforderlich. Denken Sie daran, es dauert bis zu 24 Stunden, um die Ergebnisse in der Konsole zu sehen. Allerdings können Sie sehen, die Nachrichten sofort gesendet wird, was ein großer Hinweis darauf ist, dass es funktioniert. Aktiviere nur die ausführliche Protokollierung, wie in der Dokumentation von Analytics Log Events beschrieben .

    1. Die Firebase- und Android-Entwicklerdokumentation für Appinviten ist identisch.

    2. Ja, Sie müssen getInvitation () aufrufen, um Analytics-Tracking zu erhalten und das Setup wie oben beschrieben durchzuführen.

    3. Die iOS- und Android-Äquivalenz-Apps sollten im selben Projekt sein. Verschieben Sie sie einfach zu einem einzigen Projekt in der Firebase-Konsole. Sie können einfach eine davon aus dem bestehenden Projekt entfernen und es dem anderen hinzufügen, um ein kombiniertes Projekt zu machen. Die Änderung sollte sofort reflektiert werden.

    Das Android ist ein Google Android Fan-Website, Alles ├╝ber Android Phones, Android Wear, Android Dev und Android Spiele Apps und so weiter.