# Solucionando Problemas com Universal Links no Rastreamento de App para App

<a href="https://pxa.impact.com/student/activity/1117597?sid=0c0e3e5c-54c9-4435-9bee-ebcdccb7f292&#x26;sid_i=0?utm_source=app.impact.com&#x26;utm_medium=owned-platform&#x26;utm_content=tra-350&#x26;utm_campaign=help-center" class="button primary">Faça o curso PXA</a>

Os Universal Links são validados no nível do sistema operacional (SO) e requerem uma ação iniciada pelo usuário, como um clique em um link da web, para abrir o aplicativo móvel.

#### Solução de problemas de Universal Links

{% stepper %}
{% step %}

### **Verifique se o clique no app do parceiro é um clique instanciado pelo usuário**

Suponha que o link não seja uma tag de âncora comum, mas sim instancie um novo **WebView** (Veja a clarificação no final desta página). Nesse caso, isso não é contado como navegação iniciada pelo usuário, então o SO não abrirá o Universal Link. Este é o cenário mais comum. Para resolver, você deve considerar um link de âncora comum dentro de um WebView (WKWebView, UIWebView ou SFSafariViewController) para que o Universal Link inicie o aplicativo.

Outros exemplos de cliques não instanciados pelo usuário são copiar e colar a URL diretamente na barra de pesquisa ou navegar até o link em JavaScript usando `onload()` ou `click()`.
{% endstep %}

{% step %}

### **Verifique se a página para a qual você está enviando o usuário permite Universal Links**

Em alguns casos, a impact.com depende que os Universal Links estejam configurados em um redirecionamento subsequente, geralmente no domínio do anunciante.

* Por exemplo, o domínio de rastreamento da impact.com (`goto.advertiser.com`) redirecionaria para `advertiser.com`. Os Universal Links são configurados no `advertiser.com` domínio. Portanto, é importante verificar se a página para a qual você está enviando o usuário está habilitada para Universal Links. Você pode fazer isso verificando o arquivo de associação da Apple localizado no domínio do anunciante.
* No nosso exemplo, `http://advertiser.com/.well-known/apple-app-site-association`, você notará que o arquivo de associação do domínio de rastreamento da impact.com por padrão inclui todos os subdiretórios.

{% hint style="info" %}
**Nota:** Embora os Universal Links não funcionem quando um redirecionamento em JavaScript está em uso, redirecionamentos HTTP 3xx ainda preservam a referência ao evento de usuário original. A impact.com usa redirecionamentos HTTP 3xx no rastreamento e, portanto, links que seguem um clique no domínio de rastreamento iniciam o aplicativo do anunciante com sucesso quando outros critérios são satisfeitos.
{% endhint %}

Por exemplo, o arquivo de associação abaixo permitiria Universal Links para `advertiser.com/item/123` mas não os permitiria para `advertiser.com` ou `advertiser.com/section/furniture`.

```programlisting
{
   "applinks":{
      "apps":[
      ],
      "details":[
         {
            "appID":"A1AAA22BBB.com.advertiser.Advertiser",
            "paths":[
               "NOT /section/*",
               "/item/*"
            ]
         }
      ]
   }
} 
```

{% endstep %}

{% step %}

### **Verifique se o WebView inicial que abre também dá suporte a redirecionamentos via Universal Links**

Alguns WebViews podem bloquear Universal Links, o que faria com que links de rastreamento fossem abertos dentro do WebView em vez de abrir o aplicativo do anunciante. Embora incomum, isso pode acontecer quando a política de navegação do WebView está definida como WKNavigationActionPolicyAllow + 2. Isso pode fazer com que o WebView navegue para o link sem tentar o Universal Link.
{% endstep %}

{% step %}

### **Revise as políticas de redes sociais**

Alguns aplicativos de redes sociais, como o Facebook, bloqueiam Universal Links. Se for esse o caso, usar um **Interstitial de App Móvel** pode ser útil, e recomendamos entrar em contato com seu CSM para ajudar com isso (ou [contatar o suporte](https://app.impact.com/support/portal.ihtml?createTicket=true)). A impact.com está trabalhando ativamente em maneiras de melhorar deep-linking e atribuição a partir de aplicativos de redes sociais.
{% endstep %}
{% endstepper %}

#### Mais esclarecimentos da Apple

Se você instanciar um [SFSafariViewController](https://developer.apple.com/documentation/safariservices/sfsafariviewcontroller) , [WKWebView](https://developer.apple.com/documentation/webkit/wkwebview) , ou [UIWebView](https://developer.apple.com/documentation/uikit/uiwebview) objeto para lidar com um Universal Link, o iOS abre seu site no Safari em vez de abrir seu app. No entanto, se o usuário tocar em um Universal Link dentro de um objeto SFSafariViewController, WKWebView ou UIWebView incorporado, o iOS abre seu app.

Consulte o [Support Universal Links](https://developer.apple.com/library/archive/documentation/General/Conceptual/AppSearch/UniversalLinks.html) artigo de ajuda da Apple para mais informações.
