Ir para o console

Converter usuários da Web para dispositivos móveis em usuários do aplicativo nativo

E se você tiver se dedicado a criar um ótimo site para dispositivos móveis e um belo app nativo, mas percebe que sua taxa de conversão é melhor no app nativo do que na Web? Neste caso, a conversão de usuários da Web em usuários do app pode dar um impulso à sua empresa. Movê-los de um para o outro pode ser um desafio, mas o Dynamic Links torna esse processo mais fácil. Com pouco código, você pode adicionar um recurso que permite que o usuário clique em um link na sua Web para dispositivos móveis e seja levado para a página correspondente no seu app, mesmo que eles tenham que ir até a App Store ou Google Play Store para instalá-lo primeiro.

Principais vantagens

  • Converter usuários da Web para dispositivos móveis em usuários do app nativo da maneira mais confortável possível para eles.
  • Os usuários podem iniciar seu app com o mesmo conteúdo que eles visualizam no seu site.
  • Pouca integração necessária.

Veja como começar.

Antes de começar

Use mais links diretos para o conteúdo do seu app

O segredo para a conversão de usuários da Web para dispositivos móveis em usuários do app nativo é certificar-se de que o usuário veja o mesmo conteúdo que vê na Web quando abre o app. Assim, antes de começar a enviar seus usuários da Web para dispositivos móveis ao seu app, ele precisa conseguir receber links diretos do conteúdo.

Se você implementou links universais do iOS ou links de apps para Android (ambos em inglês), então provavelmente esse processo já foi concluído. Caso não tenha feito, adicione lógica ao seu app para que ele receba um URL do seu site e exiba o conteúdo correspondente no app.

Configurar o Firebase e o SDK do Dynamic Links

Configure um novo projeto do Firebase e instale o SDK do Dynamic Links no seu app. Veja informações para iOS, Android, C++ e Unity. A instalação do SDK do Dynamic Links permite que o Firebase transmita dados sobre o link dinâmico depois que o usuário instala o aplicativo. Sem o SDK, não é possível conectar um usuário pós-instalação a um clique de pré-instalação.

Adicionar links "Abrir no app" às páginas da Web

Agora, é preciso configurar os links que levarão as pessoas do seu site para seu app nativo. Não se preocupe se seus usuários ainda não tiverem instalado seu app. O Dynamic Links cuida disso para você.

Em cada página do seu site, gere um link dinamicamente. Como o seu conteúdo já tem os links diretos, o parâmetro link pode ser simplesmente o URL da página em que ele está.

Veja como é um link desses:

<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 os usuários abrem esse link no dispositivo deles, se o app especificado pelos parâmetros apn (no Android) ou ibi (no iOS) não estiver instalado, os usuários são levados à Play Store ou App Store para instalá-lo. Em seguida, o app é aberto e o URL especificado no parâmetro link é transmitido para ele.

Abrir o conteúdo vinculado no app

Em seguida, você precisa receber o link transmitido ao seu app e abrir o conteúdo vinculado. O SDK do Dynamic Links facilita esse processo:

iOS

No iOS, você recebe o link dinâmico ao implementar o método application:continueUserActivity:restorationHandler:. No gerenciador de restauração, chame handleUniversalLink:completion: para ter acesso ao link dinâmico. Se um link dinâmico foi transmitido ao seu app, use a propriedade url da classe FIRDynamicLink para ter acesso a ele. Por exemplo:

Objective-C

[[FIRDynamicLinks dynamicLinks]
    handleUniversalLink:userActivity.webpageURL
             completion:^(FIRDynamicLink * _Nullable dynamicLink,
                          NSError * _Nullable error) {
      NSString *link = dynamicLink.url;
    }];

Swift

FIRDynamicLinks.dynamicLinks()?.handleUniversalLink(userActivity.webpageURL!) { (dynamiclink, error) in
    let link = dynamiclink.url
}

Além disso, é preciso chamar dynamicLinkFromCustomSchemeURL: no método application:openURL:options: para receber os links dinâmicos transmitidos ao app como URLs de esquema personalizado. Por exemplo:

Objective-C

FIRDynamicLink *dynamicLink = [[FIRDynamicLinks dynamicLinks] dynamicLinkFromCustomSchemeURL:url];
if (dynamicLink) {
  NSString *link = dynamicLink.url;
  // ...
  return YES;
}

Swift

let dynamicLink = FIRDynamicLinks.dynamicLinks()?.dynamicLinkFromCustomSchemeURL(url)
if let dynamicLink = dynamicLink {
  let link = dynamiclink.url
  // ...
  return true
}

Agora que você tem o valor do parâmetro link, exiba o conteúdo vinculado ao usuário.

Android

No Android, use o método getDynamicLink() para receber dados do link dinâmico:

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

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

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

Agora que você tem o valor do parâmetro link, exiba o conteúdo vinculado ao usuário.