Catch up on everything announced at Firebase Summit, and learn how Firebase can help you accelerate app development and run your app with confidence. Learn More

Converta seus usuários de aplicativos da Web para dispositivos móveis em usuários de aplicativos nativos

Mantenha tudo organizado com as coleções Salve e categorize o conteúdo com base nas suas preferências.

E se você se deu ao trabalho de criar um ótimo site para dispositivos móveis, além de um belo aplicativo nativo, mas observe que sua taxa de conversão é melhor no aplicativo nativo do que na web. Nesse caso, converter usuários da web móvel para baixar seu aplicativo pode impulsionar sua empresa. Embora movê-los de um para o outro possa ser um desafio, o Dynamic Links facilita isso. Com muito pouco código, você pode adicionar a capacidade de um usuário clicar em um link em sua web móvel e ser direcionado para a página correspondente em seu aplicativo, mesmo que tenha que ir à App Store ou Google Play Store para instalá-lo primeiro!

Principais benefícios

  • Transforme usuários da web móvel em usuários de aplicativos nativos, tornando a transição o mais confortável possível para eles.
  • Os usuários podem iniciar seu aplicativo com o mesmo conteúdo que estavam visualizando em seu site.
  • Muito pouca integração necessária.

Veja como começar!

Antes de você começar

Torne o conteúdo do seu aplicativo vinculável

A chave para converter usuários da web móvel em usuários de aplicativos nativos é garantir que o usuário veja o mesmo conteúdo ao abrir o aplicativo que está vendo na web. Portanto, antes que você possa começar a enviar seus usuários da web móvel para seu aplicativo, seu aplicativo precisa receber links diretos para o conteúdo.

Se você implementou links universais para iOS ou links de aplicativos para Android , provavelmente já fez esse trabalho. Mas, caso contrário, adicione lógica ao seu aplicativo que receba uma URL do seu site e exiba o conteúdo correspondente em seu aplicativo para o usuário.

Configure um novo projeto do Firebase e instale o SDK do Dynamic Links em seu aplicativo. ( iOS , Android , C++ , Unity ). A instalação do SDK do Dynamic Links permite que o Firebase transmita dados sobre o Dynamic Link depois que o usuário instalar o aplicativo. Sem o SDK, não há como conectar um usuário pós-instalação com um clique de pré-instalação.

Agora é hora de configurar os links que levarão as pessoas do seu site para o seu aplicativo nativo. Não se preocupe se seus usuários ainda não tiverem o aplicativo instalado; Dynamic Links pode cuidar disso para você.

Em cada página do seu site, gere dinamicamente um Link Dinâmico . Como você já tornou seu conteúdo passível de links diretos, o parâmetro de link pode ser simplesmente o URL da página em que está.

Veja como pode ser esse link:

<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 este link em seus dispositivos, se o aplicativo especificado pelo parâmetro apn (no Android) ou o parâmetro ibi (no iOS) não estiver instalado, os usuários são levados à Play Store ou App Store para instalar o aplicativo. Em seguida, o aplicativo é aberto e a URL especificada no parâmetro de link é passada para ele.

Abra o conteúdo vinculado em seu aplicativo

Em seguida, você precisa receber o link que é passado para seu aplicativo e abrir o conteúdo vinculado, o que é fácil usando o SDK do Dynamic Links:

iOS

No iOS, você recebe o Dynamic Link implementando o método application:continueUserActivity:restorationHandler: No manipulador de restauração, você pode obter o Dynamic Link chamando handleUniversalLink:completion: . Se um Dynamic Link foi passado para seu aplicativo, você pode obtê-lo na propriedade url do FIRDynamicLink . Por exemplo:

Objetivo-C

Observação: este produto Firebase não está disponível em destinos macOS, Mac Catalyst, tvOS ou watchOS.
[[FIRDynamicLinks dynamicLinks]
    handleUniversalLink:userActivity.webpageURL
             completion:^(FIRDynamicLink * _Nullable dynamicLink,
                          NSError * _Nullable error) {
      NSString *link = dynamicLink.url;
    }];

Rápido

Observação: este produto Firebase não está disponível em destinos macOS, Mac Catalyst, tvOS ou watchOS.
FIRDynamicLinks.dynamicLinks()?.handleUniversalLink(userActivity.webpageURL!) { (dynamiclink, error) in
    let link = dynamiclink.url
}

Além disso, você deve chamar dynamicLinkFromCustomSchemeURL: no método application:openURL:options: para receber links dinâmicos passados ​​para seu aplicativo como URLs de esquema personalizado. Por exemplo:

Objetivo-C

Observação: este produto Firebase não está disponível em destinos macOS, Mac Catalyst, tvOS ou watchOS.
FIRDynamicLink *dynamicLink = [[FIRDynamicLinks dynamicLinks] dynamicLinkFromCustomSchemeURL:url];
if (dynamicLink) {
  NSString *link = dynamicLink.url;
  // ...
  return YES;
}

Rápido

Observação: este produto Firebase não está disponível em destinos macOS, Mac Catalyst, tvOS ou watchOS.
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 seu usuário.

Android

No Android, você usa o método getDynamicLink() para obter dados do 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
                // ...
            }
        }

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