The Deep Linking Playbook for iOS 12

Effectively deep linking on both Android and iOS is critical for both app developers and marketers.

We recently covered how to effectively deep link on Android. Today we’ll cover the same topic for iOS 12, which is equally important.

Here’s why: While Android adopters still outrank Apple smartphone owners on a user basis, iOS 12 adoption continues to outpace earlier versions of iOS. The big picture: No matter which phone your users prefer, if you’re not effectively deep linking them into your app, their experience – and your KPIs – will suffer.

We already covered how you can most effectively deep link on iOS 11. Now, let’s take a look at what you need to do now to effectively deep link your iOS12 users into your app.


What Is Deep Linking?

Before we dive into iOS 12, let’s briefly review what deep linking is and why it matters.

Deep linking, when done effectively, creates a seamless experience from any channel (email, mobile web, paid ad) into an app.

Traditional deep links can route users to app content — as long as the app is already installed when the link is opened. However, traditional deep links won’t work if the user doesn’t have the app installed – and the user will be delivered to an error or fallback page.

Here’s why that’s bad: A user is more likely to convert in an app than in other channels, such as the mobile web. Even worse, when a user is delivered to an error page, or a fallback page, they’re effectively stranded. This example is one of the easiest ways to lose an interested user before they convert.


How Does Deep Linking Work on iOS?

Deep linking is made possible by the operating system. In the early days, once an app was  configured for deep linking, iOS would allow users to navigate into an app using a custom URI scheme like my-app-scheme://data=123. This process worked by wrapping custom URI scheme links inside a standard https:// or https:// link. Once prepped, the device’s web browser would redirect users to their intended app destination.

With the release of iOS 9.0, Apple deprecated URI schemes for Universal Links, which allow users to open an app directly — a more user-friendly and more secure approach than redirecting through a mobile browser.


The Challenge With Universal Links: AASA Files – And A Tool to Help

Despite their advantages, Universal Links can be more challenging to implement than URI schemes.

Configuring Universal Links requires app developers to host a custom Apple App Site Association (AASA) file on their Universal Link domain, and add special method calls within their app to interpret those Universal Links. (If you need help figuring out if you’re set up correctly, we have a very handy AASA Validator to test your domain against Apple’s requirements.)

Most recently, however, we found that since iOS 11.2+, the app’s AASA file is no longer downloaded reliably onto devices after an app install. As a result, clicking on Universal Links will no longer open an app consistently. You can, however, set forced URI redirect mode on your Branch links to open the app with URI schemes.

Given the complexities associated with implementing Universal Links, we always recommend working with a partner like Branch to make sure you’ve covered every use and edge case, and every new iOS release. The opportunity cost of broken links is too great for any other approach.


Recent Developments for Deep Linking on iOS 12

The rollout of iOS 12 introduced two new complexities.  You’ll want to have a handle on both if you’re going to ensure no edge case goes unaddressed.

Siri Shortcuts in iOS 12

Thanks to a new Siri Shortcuts feature, users can create multi-step shortcuts using third-party apps and activate certain actions using Siri voice command. This also allows developers to surface targeted content via Siri.

Example: Let’s say you want to use the Starbucks app to order your favorite drink at a nearby store. You can build a shortcut for that which addresses each step (put in an order using the Starbucks app, pay for it, etc.) in one vocal command.

iOS 12 also offers users a gallery of pre-made shortcuts that developers can leverage to create their own commands. We here at Branch refer to this feature as vocal deep linking. We’ll have more on that soon.

ITP on iOS 12 – And How Branch Has Responded

ITP also changed in iOS 12 – and Branch responded.

First released with iOS 11, ITP (Intelligent Tracking Prevention) is designed to reduce third-party trackers from capturing cross-site browsing data on mobile and desktop Safari browsers. Ultimately, this change shortened the shelf-life of third-party cookies to 24 hours from the time a user visits a website using Safari.

In iOS 12, Apple also continued to double down on cookie privacy in Safari. To support this initiative while maintaining industry-best matching, Branch implemented IPv6 (a newer, more granular version of the IP protocol). IPv6 helps to ensure that when Branch does rely on matching, results will be even more accurate than ever before. (For a more in-depth look at Branch’s approach and IPv6, check out this blog post.)

As a mission-critical need for connecting users to relevant in-app content, deep linking is filled with nuance and a wide range of options.

Ready to learn more and start deep linking on iOS with Branch? Contact our sales team or sign up for the Branch dashboard today.