Universal Links are validated on the operating system (OS) level and require a user-initialized action such as a click on a web link to open the mobile app.
Verify the click from the partner's app is a user-instantiated click
Suppose the link is not a regular anchor tag but instead instantiates a new WebView (See clarification at the bottom of this page). In that case, this is not counted as user-initiated navigation, so the OS will not open the Universal Link. This is the most common scenario. To resolve it, you would want to consider a regular anchor link inside a WebView (WKWebView, UIWebView, or SFSafariViewController) for the Universal Link to launch the app.
Other examples of non-user instantiated clicks are copy-pasting the URL directly in the search bar or by navigating to the link in JavaScript using
onload()
orclick()
.Check to see if the page to which you are sending the user allows for Universal Links
In some cases, impact.com relies on Universal Links to be configured on a subsequent redirect, usually the advertiser domain. Fo
For example, impact.com's tracking domain (
goto.advertiser.com
) would redirect toadvertiser.com
. Universal Links are configured on theadvertiser.com
domain. Therefore it’s important to verify that the page you are sending the user to is enabled for Universal Links. You can do so by checking the Apple association file located on the advertiser domain.In our example,
http://advertiser.com/.well-known/apple-app-site-association
, you will note that the impact.com tracking domain association file defaults to include all sub-directories.
Note: Even though Universal Links don't work when a JavaScript redirect is in use, HTTP 3xx redirects still preserve the reference to the original user event. impact.com uses HTTP 3xx redirects in tracking and hence links following a click on the tracking domain launch the advertiser app successfully when other criteria are satisfied.
For instance, the association file below would allow Universal Links for
advertiser.com/item/123
but would not allow them foradvertiser.com
oradvertiser.com/section/furniture
.{ "applinks":{ "apps":[ ], "details":[ { "appID":"A1AAA22BBB.com.advertiser.Advertiser", "paths":[ "NOT /section/*", "/item/*" ] } ] } }
See that the initial WebView that opens also supports redirects via Universal Links
Some WebViews can block Universal Links, which would cause tracking links to open inside the WebView instead of opening the advertiser app. Although uncommon, this can happen when the WebView navigation policy is set to WKNavigationActionPolicyAllow + 2. This can cause the WebView to navigate to the link without trying the Universal Link.
Review social media policies
Some social media apps like Facebook block Universal Links. If this is the case, using a Mobile App Interstitial may be helpful, and we recommend reaching out to your CSM for help with this (or contact support). impact.com is actively working on ways to improve deep-linking and attribution from social media apps.
If you instantiate an SFSafariViewController , WKWebView , or UIWebView object to handle a Universal Link, iOS opens your website in Safari instead of opening your app. However, if the user taps a Universal Link from within an embedded SFSafariViewController, WKWebView, or UIWebView object, iOS opens your app.
Refer to Apple's Support Universal Links help article for more information.