Perguntas frequentes sobre Universal Links
Vários fatores podem afetar o comportamento dos seus universal links. Se você estiver tendo resultados inesperados com universal links, seja na testagem ou produção, consulte este artigo para encontrar uma solução. Se o problema persistir, entre em contato conosco.
Problemas gerais
Minha sintaxe de URL e codificação estão corretas?
Se seu deep link não está direcionando para o destino especificado ou está retornando um erro HTTP 404, primeiro confira a sintaxe da URL e a codificação.
As URLs usam, em geral, a seguinte sintaxe: scheme://host:port/path?query-string#fragment-id
Cada parte de uma URL tem uma função diferente e usa caracteres específicos para identificar e separar valores. O esquema e o host não diferenciam letras maiúsculas e minúsculas, mas o caminho (path) e a string de consulta (query) diferenciam. Um erro na composição da sua URL impedirá que ela seja aberta como deveria.
Ao configurar seu deep link, preste atenção a estas condições:
- Se você adicionar um parâmetro da Adjust a uma string de consulta de URL que já contém parâmetros de consulta, use um
&
. Do contrário, informações após o segundo?
na URL são ignoradas.- Exemplo correto:
https://abcd.adj.st/my?path=location&client=name&adjust_t=klm012
- Exemplo incorreto:
https://z9pm.adj.st/my?path=location&client=name?adjust_t=klm012
- Exemplo correto:
- Se uma string de consulta está codificada, comece com um
/
ou assegure que ela seja parte de um parâmetrodeeplink
.
Se seu aplicativo ainda não estiver instalado e essas condições não foram atendidas, o parâmetro adjust_t
é ignorado pelo navegador. A Adjust precisa desse parâmetro para localizar a fonte ou origem do clique; sem isso, nós retornaremos um erro HTTP 404 URL not found
.
Exemplos
Dependendo de como a URL está configurada, seu deep link pode ter os seguintes comportamentos:
Configuração do deep link | Exemplo de URL do link | Comportamento |
---|---|---|
URL do link + parâmetro deep_link | https://app.adjust.com/r40ncx7?deep_link=adjust%3A%2F%2F%3Fpath | Abre o app em uma página in-app específica |
Universal link | https://abcd.adj.st/%3Fpath?adjust_t=r40ncx7 | Abre o app em uma página in-app específica |
Universal link | https://abcd.adj.st/?path&adjust_t=r40ncx7 | Abre o app se já estiver instalado, mas não consegue acessar a página in-app especificada. |
Universal link | https://abcd.adj.st%3Fpath?adjust_t=r40ncx7 | É inválido e retorna um erro |
Por que não posso ver meus dados de atribuição e/ou níveis de campanha?
Se os dados de atribuição ou níveis de campanha da sua URL do link de deep link não estiverem disponíveis, isso provavelmente é devido a um problema na configuração. Confira se os parâmetros do ID do dispositivo e parâmetros de campanha (conforme aplicável) não estão sendo afetados por causa de erros de codificação em fallbacks ou callbacks. Por exemplo, se não há espaços na URL ou caracteres inválidos.
Por que eu sou levado(a) para a loja mesmo tendo o aplicativo instalado?
Tipicamente isso significa que seu deep link não conseguiu abrir o aplicativo e nós redirecionamos para a loja como fallback. Para testar, siga estes passos:
Siga nossas instruções para testes como usuário existente com universal links e links com o parâmetro deep_link.
Se seu teste for bem-sucedido e o aplicativo abrir, considere em que ambiente o deep link foi clicado quando ocorreu o erro. Depois, verifique se são necessários parâmetros adicionais para esse caso.
- Por exemplo: se um universal link JSR é clicado a partir do Slack, a flag
adjust_deeplink_js=1
deve estar presente. Isso ajuda a carregar o esquema antes de redirecionar para a loja. Se seu link não funcionar mesmo com a flagadjust_deeplink_js
presente, então seu App Scheme pode estar incorreto no Campaign Lab.
- Por exemplo: se um universal link JSR é clicado a partir do Slack, a flag
Certifique-se de que não há erros de codificação nos seus fallbacks ou callbacks na URL do link que podem quebrá-la. Isso pode fazer com que os parâmetros sejam descartados. Parâmetros descartados resultarão no mau funcionamento do link por completo.
Por que meu deep link não abre no lugar correto no aplicativo?
Se o link não abrir no lugar correto, mas abrir o aplicativo mesmo assim, verifique se a configuração do link ou do aplicativo está causando o problema.
- Hospede o domínio do universal link (
https://abcd.adj.st/
) ou esquema (myapp://
) em um ambiente web e clique nele a partir daí. - Contate seu desenvolvedor para assegurar que os caminhos dentro do aplicativo estão configurados corretamente.
A Adjust recebe dados de cliques de entrada para deep links com um link da Adjust ou parâmetros da Adjust anexados. Um deep link direto com apenas um domínio que é específico ao seu aplicativo não retornará dados para a Adjust.
Envia dados de cliques:
myapp://welcome?adjust_t=abc123&adjust_campaign=re-engage_my_users&adjust_adgroup=apac&adjust_creative=promo1
https://z9pm.adj.st/welcome?adjust_t=abc123&adjust_campaign=re-engage_my_users&adjust_adgroup=apac&adjust_creative=promo1
Não envia dados de cliques:
myapp://welcome
Para receber dados de cliques para aplicativos que já estão instalados e para a reatribuição com deep link, implemente o clique do SDK no SDK da Adjust iOS; Android.
Deep links que acionam um clique do SDK são registrados como cliques no Datascape. Eles também podem ser visualizados nos dados brutos usando o callback click
. Para uma visualização granular sobre quais cliques resultam de um clique do SDK no deep link, inclua o parâmetro {is_deeplink_click}
.
Problemas com universal links
Por que meu universal link não abre um aplicativo instalado?
Verifique se você configurou os universal links corretamente.
Verifique de qual ambiente a Apple está abrindo o link. A Apple não permite redirects para universal links fora do Safari, por isso, você precisa de um raw universal link ou raw scheme no ambiente web. Por exemplo,
https://abcd.adj.st/
oumyapp://
, respectivamente. Com o aplicativo instalado no seu dispositivo de teste, visite a página onde você hospedou o raw universal link ou o esquema, e selecione o link.
Se seu aplicativo não abrir :
- Abra sua página HTML de teste no Safari e selecione o ícone Compartilhar. Você deve ver um menu "Abrir em...", onde seu aplicativo está listado como uma das opções. Se o app aparecer, então as configuração de Domínios Associados está correta e o arquivo Apple App Site Association (AASA) foi baixado corretamente. Talvez seja necessário desinstalar e reinstalar o aplicativo caso essa opção não esteja disponível.
- Verifique se seu Bundle ID é o mesmo na testagem e na produção.
- Verifique se o Bundle ID do iOS e o prefixo do aplicativo no AppView estão corretos. Se a configuração estiver correta e seu aplicativo não abrir mesmo assim, consulte seu desenvolvedor para investigar a associação do universal link ou app scheme.
- Verifique se o atributo
target=“_blank”
é parte do seu link:
Isso pode levar à abertura do aplicativo durante o teste, mas não no ambiente de produção.
Por exemplo, com o atributo target=“_blank”
, seu código HTML pode parecer com o seguinte:
<a href="[https://abcd.adj.st](https://abcd.adj.st/)" target="_blank">Universal Link to App</a>
Para solucionar esse problema, remova o atributo, como no exemplo a seguir:
<a href="[https://abcd.adj.st](https://abcd.adj.st/)">Universal Link to App</a>
Por que eu sou levado(a) para a loja mesmo tendo o aplicativo instalado?
- Siga nossas instruções para testar os universal links. Além disso, siga os passos descritos na seção "Por que meu universal link não abre um aplicativo instalado?" acima.
- Considere em que ambiente o universal link foi clicado quando ocorreu o erro. Depois, verifique se são necessários parâmetros adicionais para esse caso.
- Por exemplo: se um universal link JSR é clicado a partir do Slack, a flag
adjust_deeplink_js=1
deve estar presente. Isso ajuda a carregar o esquema antes de redirecionar para a loja. Se o link não funcionar mesmo com a flagadjust_deeplink_js
presente, o App Scheme poderá ter sido inserido incorretamente nas configurações do aplicativo no AppView.
- Por exemplo: se um universal link JSR é clicado a partir do Slack, a flag
Por que meu deep link ou deferred deep link não abre o aplicativo no lugar correto após a instalação?
Se o link não abrir no lugar correto, mas abrir o aplicativo mesmo assim, verifique se a configuração do link ou aplicativo está causando o problema.
- Hospede o domínio do universal link (
https://abcd.adj.st/
) ou esquema (myapp://
) em um ambiente web e clique nele a partir daí. - Contate seu desenvolvedor para assegurar que os caminhos dentro do aplicativo estão configurados corretamente.
Se você for levado para o caminho correto como usuário existente, mas não como novo usuário, inspecione seu dispositivo via Console de Teste e certifique-se de que você foi atribuído ao clique. Do contrário, faça o esquecimento do dispositivo via Console de Teste e tente novamente.
Se você for atribuído ao clique, inspecione seu dispositivo para verificar se ele inclui um parâmetro deeplink
. Se não, certifique-se de que não há problemas na codificação ou caracteres especiais que estão cortando a URL antes do parâmetro deeplink
.
Por fim, se um parâmetro deeplink
está incluído, certifique-se de que o caminho (path) está presente. Se o caminho não estiver presente, ele foi cortado por algum motivo. Contate support@adjust.com para receber suporte.
Por que meu universal link não está funcionando a partir de uma publicação no Facebook ou Instagram?
Verifique se o caminho (path) está anexado nos universal links. Se não estiver, o usuário será levado para loja mesmo se o aplicativo estiver instalado. O caminho fornecido não precisa ser válido.
Exemplo de parâmetro com o caminho anexado: https://abcd.adj.st/path?adjust_t=abc123
Posso usar universal links em campanhas de e-mail?
Na maioria das vezes, o iOS não permite redirecionar universal links para fora do Safari. Isso significa que ambientes usando o SFSafariViewController são afetados.
Um e-mail pode ser aberto em muitos ambientes diferentes, como um navegador ou um aplicativo de e-mail diferente que não suporta universal links. Por isso, a melhor prática é usar JSR links ou, de preferência, uma das integrações ESP da Adjust.
Por que não posso ver meus dados de atribuição e/ou níveis de campanha?
Verifique se os parâmetros da Adjust estão com o prefixo adj_
ou adjust_
. Os parâmetros da Adjust que não estiverem com o prefixo adj_
ou adjust_
são descartados e talvez não seja possível ver os dados desses parâmetros.
Por que meu parceiro não está recebendo callbacks atribuídos apesar de as instalações estarem sendo atribuídas corretamente?
- Verifique se você adicionou o parâmetro click ID ao universal link.
- Certifique-se de que não há erros de codificação nos seus fallbacks ou callbacks na URL do link que podem quebrá-la.
- Verifique se o parâmetro click ID está com o prefixo
adj_
ouadjust_
Por que estou tendo problemas com JSR universal links no Safari para iOS 12.2 e 12.3?
No iOS 12.2 e 12.3, os JSR universal links nem sempre abrem corretamente quando clicados em um ambiente Safari. Isso afeta especificamente casos nos quais o referrer do cabeçalho HTTP não é legível: por exemplo, no modo incógnito.
Para campanhas no Safari, recomendamos usar raw universal links. Porém, isso não funciona para campanhas de e-mail com URLs wrapped (ou envolvidas).
No iOS 13+, esse problema não ocorre porque é possível aplicar o fallback no esquema. Entretanto, isso leva a um pop-up adicional.