获取我们在 Firebase 峰会上发布的所有信息,了解 Firebase 可如何帮助您加快应用开发速度并满怀信心地运行应用。了解详情

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

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.