Convertir les utilisateurs Web mobiles en utilisateurs d'applications natives

Que faire si vous avez pris la peine de créer un excellent site Web mobile en plus d'une belle application native, mais que vous remarquez que votre taux de conversion est meilleur dans l'application native que sur le Web. Dans ce cas, la conversion des utilisateurs Web mobiles pour télécharger votre application pourrait donner un coup de pouce à votre entreprise. Bien que les déplacer de l'un à l'autre puisse être difficile, Dynamic Links facilite la tâche. Avec très peu de code, vous pouvez ajouter la possibilité pour un utilisateur de cliquer sur un lien sur votre site Web mobile et d'être redirigé vers la page correspondante de votre application, même s'il doit d'abord se rendre sur l'App Store ou Google Play Store pour l'installer !

Avantages clés

  • Transformez les utilisateurs Web mobiles en utilisateurs d'applications natives tout en rendant la transition aussi confortable que possible pour eux.
  • Les utilisateurs peuvent démarrer votre application avec le même contenu qu'ils consultaient sur votre site.
  • Très peu d'intégration nécessaire.

Voici comment commencer !

Avant que tu commences

Rendre le contenu de votre application accessible en profondeur

La clé pour convertir les utilisateurs Web mobiles en utilisateurs d'applications natives est de s'assurer que l'utilisateur voit le même contenu lorsqu'il ouvre l'application qu'il voit sur le Web. Ainsi, avant que vous puissiez commencer à envoyer vos utilisateurs Web mobiles vers votre application, votre application doit être en mesure de recevoir des liens profonds vers du contenu.

Si vous avez implémenté des liens universels iOS ou des liens d'application Android , vous avez probablement déjà effectué ce travail. Mais si ce n'est pas le cas, ajoutez une logique à votre application qui prend une URL de votre site Web et affiche le contenu correspondant dans votre application à l'utilisateur.

Configurez un nouveau projet Firebase et installez le SDK Dynamic Links dans votre application. ( iOS , Androïd , C++ , Unity ). L'installation du SDK Dynamic Links permet à Firebase de transmettre des données sur le lien dynamique une fois que l'utilisateur a installé l'application. Sans le SDK, il n'y a aucun moyen de connecter un utilisateur de post-installation avec un clic de pré-installation.

Il est maintenant temps de configurer les liens qui déplaceront les gens de votre site Web vers votre application native. Ne vous inquiétez pas si vos utilisateurs n'ont pas encore installé l'application ; Dynamic Links peut s'en charger pour vous.

Sur chaque page de votre site web, générez dynamiquement un Lien Dynamique . Puisque vous avez déjà rendu votre contenu pouvant être lié en profondeur, le paramètre de link peut simplement être l'URL de la page sur laquelle il se trouve.

Voici à quoi pourrait ressembler un tel lien :

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

Lorsque les utilisateurs ouvrent ce lien sur leur appareil, si l'application spécifiée par le paramètre apn (sur Android) ou le paramètre ibi (sur iOS) n'est pas installée, les utilisateurs sont redirigés vers le Play Store ou l'App Store pour installer l'application. Ensuite, l'application s'ouvre et l'URL spécifiée dans le paramètre de link lui est transmise.

Ouvrez le contenu lié dans votre application

Ensuite, vous devez recevoir le lien transmis à votre application et ouvrir le contenu lié, ce qui est facile avec le SDK Dynamic Links :

iOS

Sur iOS, vous recevez le lien dynamique en implémentant la méthode application:continueUserActivity:restorationHandler: :. Dans le gestionnaire de restauration, vous pouvez obtenir le lien dynamique en appelant handleUniversalLink:completion: . Si un lien dynamique a été transmis à votre application, vous pouvez l'obtenir à partir de la propriété url du FIRDynamicLink . Par exemple:

Objectif c

Remarque : Ce produit Firebase n'est pas disponible sur les cibles macOS, Mac Catalyst, tvOS ou watchOS.
[[FIRDynamicLinks dynamicLinks]
    handleUniversalLink:userActivity.webpageURL
             completion:^(FIRDynamicLink * _Nullable dynamicLink,
                          NSError * _Nullable error) {
      NSString *link = dynamicLink.url;
    }];

Rapide

Remarque : Ce produit Firebase n'est pas disponible sur les cibles macOS, Mac Catalyst, tvOS ou watchOS.
FIRDynamicLinks.dynamicLinks()?.handleUniversalLink(userActivity.webpageURL!) { (dynamiclink, error) in
    let link = dynamiclink.url
}

De plus, vous devez appeler dynamicLinkFromCustomSchemeURL: dans la méthode application:openURL:options: pour recevoir les liens dynamiques transmis à votre application en tant qu'URL de schéma personnalisé. Par exemple:

Objectif c

Remarque : Ce produit Firebase n'est pas disponible sur les cibles macOS, Mac Catalyst, tvOS ou watchOS.
FIRDynamicLink *dynamicLink = [[FIRDynamicLinks dynamicLinks] dynamicLinkFromCustomSchemeURL:url];
if (dynamicLink) {
  NSString *link = dynamicLink.url;
  // ...
  return YES;
}

Rapide

Remarque : Ce produit Firebase n'est pas disponible sur les cibles macOS, Mac Catalyst, tvOS ou watchOS.
let dynamicLink = FIRDynamicLinks.dynamicLinks()?.dynamicLinkFromCustomSchemeURL(url)
if let dynamicLink = dynamicLink {
  let link = dynamiclink.url
  // ...
  return true
}

Maintenant que vous avez la valeur du paramètre de link , affichez le contenu lié à votre utilisateur.

Android

Sur Android, vous utilisez la méthode getDynamicLink() pour obtenir les données du 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
                // ...
            }
        }

Maintenant que vous avez la valeur du paramètre de link , affichez le contenu lié à votre utilisateur.