Imagine you're about to send a push message that includes a coupon for a widget, and all users opening the push message should be taken to the widget's product page within your app. This is called deep linking. Let's go over what this means and how to do this.
At a high level, deep links are very similar to traditional web URL links. For example, if I type "www.espn.com" into a browser, the browser will recognize that it's a valid webpage, and then send me the ESPN main website. This happens because browsers are made to handle web URL links in an intelligent way. But, when you try to deep link within an app (not the web), something more nuanced must happen. Rather than opening a browser and sending you to the web page, your phone must open a specific app and send you to a specific page within an app. A deep link in an app, therefore, will look something like this:
sportscenter://showArticle?12345
In order for your phone or device to know which app to open when it receives a deep link, you need to set up something called a custom URL scheme. For example, if I want to read an article in an ESPN app I might pass the phone a deep link like the one above. But, in order for the app to know which app to open, ESPN must first register sportscenter://
as its custom URL scheme. Because these URL schemes are unique per app, your phone will know exactly which app to open when it sees a specific URL scheme, as long as it has been registered. Beyond that, the app must also be configured to intelligently handle the path after the URL scheme (i.e. showArticle?12345
) in the same way a browser is able to intelligently handle text that is structured as a URL.
It is very easy to use deep links in Localytics. To setup a deep link on a push messaging campaign, for example, go to the "Advanced" section when creating a Messaging campaign and input a properly constructed deep link in the "value" field. The only other requirement is that you should provide a "key" which effectively tells your app that the corresponding "value" that has been entered should be treated as a deep link. For example, your app might be configured such that the key is "deeplinkHandler" and the value is myapp://somepage
. The specific entries will vary depending on how your app is structured, but the process in Localytics is always the same: enter these under the "Advanced" section as key-value pairs.