Converti utenti Web mobili in utenti app nativi

Che cosa succede se ti sei preso la briga di creare un ottimo sito Web mobile oltre a una bellissima app nativa, ma noti che il tuo tasso di conversione è migliore nell'app nativa che sul Web. In questo caso, convertire gli utenti Web mobili per scaricare la tua app potrebbe dare una spinta alla tua attività. Mentre spostarli dall'uno all'altro può essere difficile, Dynamic Links lo rende facile. Con pochissimo codice puoi aggiungere la possibilità per un utente di fare clic su un collegamento sul tuo Web mobile ed essere indirizzato alla pagina corrispondente nella tua app, anche se deve prima accedere all'App Store o al Google Play Store per installarlo!

Vantaggi chiave

  • Trasforma gli utenti del Web mobile in utenti di app native rendendo la transizione il più confortevole possibile per loro.
  • Gli utenti possono avviare la tua app con lo stesso contenuto che stavano visualizzando sul tuo sito.
  • Necessaria pochissima integrazione.

Ecco come iniziare!

Prima di iniziare

Rendi i contenuti della tua app collegabili in modo diretto

La chiave per convertire gli utenti Web mobili in utenti di app native è assicurarsi che l'utente veda lo stesso contenuto quando apre l'app che sta vedendo sul Web. Quindi, prima di poter iniziare a inviare i tuoi utenti Web mobili alla tua app, la tua app deve essere in grado di ricevere link diretti ai contenuti.

Se hai implementato collegamenti universali iOS o collegamenti alle app Android , probabilmente hai già fatto questo lavoro. In caso contrario, aggiungi la logica alla tua app che accetta un URL dal tuo sito Web e mostra all'utente il contenuto corrispondente all'interno della tua app.

Configura un nuovo progetto Firebase e installa Dynamic Links SDK nella tua app. ( iOS , Android , C++ , Unity ). L'installazione di Dynamic Links SDK consente a Firebase di trasmettere i dati su Dynamic Link dopo che l'utente ha installato l'app. Senza l'SDK, non è possibile connettere un utente post-installazione con un clic di pre-installazione.

Ora è il momento di impostare i collegamenti che sposteranno le persone dal tuo sito web alla tua app nativa. Non preoccuparti se i tuoi utenti non hanno ancora installato l'app; Dynamic Links può occuparsene per te.

In ogni pagina del tuo sito web, genera dinamicamente un collegamento dinamico . Poiché hai già reso i tuoi contenuti collegabili in profondità, il parametro link può essere semplicemente l'URL della pagina in cui si trova.

Ecco come potrebbe essere un collegamento del genere:

<a href="https://example.page.link/?link=https://www.example.com/content?item%3D1234&apn=com.example.android&ibi=com.example.ios">Open this page in our app!</a>

Quando gli utenti aprono questo collegamento sul proprio dispositivo, se l'app specificata dal parametro apn (su Android) o dal parametro ibi (su iOS) non è installata, gli utenti vengono indirizzati al Play Store o all'App Store per installare l'app. Quindi, l'app si apre e le viene passato l'URL specificato nel parametro link .

Apri il contenuto collegato nella tua app

Successivamente, devi ricevere il link passato alla tua app e aprire il contenuto collegato, il che è facile utilizzando Dynamic Links SDK:

iOS

In iOS, ricevi il collegamento dinamico implementando il metodo application:continueUserActivity:restorationHandler: Nel gestore di ripristino, puoi ottenere il collegamento dinamico chiamando handleUniversalLink:completion: . Se un collegamento dinamico è stato passato alla tua app, puoi ottenerlo dalla proprietà url di FIRDynamicLink . Per esempio:

Obiettivo-C

Nota: questo prodotto Firebase non è disponibile su target macOS, Mac Catalyst, tvOS o watchOS.
[[FIRDynamicLinks dynamicLinks]
    handleUniversalLink:userActivity.webpageURL
             completion:^(FIRDynamicLink * _Nullable dynamicLink,
                          NSError * _Nullable error) {
      NSString *link = dynamicLink.url;
    }];

Veloce

Nota: questo prodotto Firebase non è disponibile su target macOS, Mac Catalyst, tvOS o watchOS.
FIRDynamicLinks.dynamicLinks()?.handleUniversalLink(userActivity.webpageURL!) { (dynamiclink, error) in
    let link = dynamiclink.url
}

Inoltre, devi chiamare dynamicLinkFromCustomSchemeURL: nel metodo application:openURL:options: per ricevere i link dinamici passati alla tua app come URL di schemi personalizzati. Per esempio:

Obiettivo-C

Nota: questo prodotto Firebase non è disponibile su target macOS, Mac Catalyst, tvOS o watchOS.
FIRDynamicLink *dynamicLink = [[FIRDynamicLinks dynamicLinks] dynamicLinkFromCustomSchemeURL:url];
if (dynamicLink) {
  NSString *link = dynamicLink.url;
  // ...
  return YES;
}

Veloce

Nota: questo prodotto Firebase non è disponibile su target macOS, Mac Catalyst, tvOS o watchOS.
let dynamicLink = FIRDynamicLinks.dynamicLinks()?.dynamicLinkFromCustomSchemeURL(url)
if let dynamicLink = dynamicLink {
  let link = dynamiclink.url
  // ...
  return true
}

Ora che hai il valore del parametro link , mostra il contenuto collegato al tuo utente.

Androide

Su Android, usi il metodo getDynamicLink() per ottenere dati da Dynamic Link:

Java

FirebaseDynamicLinks.getInstance()
        .getDynamicLink(getIntent())
        .addOnCompleteListener(new OnCompleteListener<PendingDynamicLinkData>() {
            @Override
            public void onComplete(@NonNull Task<PendingDynamicLinkData> task) {
                if (!task.isSuccessful()) {
                    // Handle error
                    // ...
                }

                FirebaseAppInvite invite = FirebaseAppInvite.getInvitation(task.getResult());
                if (invite != null) {
                    // Handle invite
                    // ...
                }
            }
        });

Kotlin+KTX

Firebase.dynamicLinks
        .getDynamicLink(intent)
        .addOnCompleteListener { task ->
            if (!task.isSuccessful) {
                // Handle error
                // ...
            }

            val invite = FirebaseAppInvite.getInvitation(task.result)
            if (invite != null) {
                // Handle invite
                // ...
            }
        }

Ora che hai il valore del parametro link , mostra il contenuto collegato al tuo utente.