At its f8 developer conference in San Francisco, Facebook today announced App Links, an open-standard and open-source initiative to allow developers to link directly to specific content inside apps installed on mobile devices. App Links has been released today, with initial partners including Spotify, Dropbox, Pinterest, Quip, and Venmo, among others.
Traditionally, desktop computers can open multiple tabs for different websites in a web browser, allowing the user to quickly switch between tabs. On mobile devices, however, after the rise of dedicated apps for websites that also have a mobile web view, there hasn’t been a unified way to quickly open content from the web inside native apps, which tend to offer more functionalities, better performance, and deeper system integrations than mobile websites. For instance, links to songs shared on Spotify open the Spotify mobile web preview and links to shared Dropbox documents launch the mobile Dropbox website, not the document in the native Dropbox app.
Deep-linking to content into native apps isn’t new from a technological standpoint, but, so far, there hasn’t been a single standard large companies and independent developers could agree upon and implement consistently. Yelp allows users to view businesses loaded on the mobile website into the native app if installed; for its iOS apps, Google built an ecosystem of deep-links and inter-app communication leveraging x-callback-url, Greg Pierce’s open-source solution that lets users jump from one app to another and return to their original position in the “calling” app with one tap. Even Apple experimented with deep-linking by rolling out Smart App Banners for Safari in 2012, allowing website owners to point customers to a native app while optionally retaining navigational hierarchy and context by rerouting web URLs to specific areas inside apps.
With App Links, Facebook wants to standardize deep-linking to native apps by using special metadata added via HTML. The basic premise of App Links is that if a user taps on a link on a mobile device and that link belongs to a website that offers the same content in a native app with better features than a web view, the link could automatically redirect the user to the app (if installed) or the App Store, with support for deep-linking to content inside the app. The goal, according to Facebook, is to provide the “best experience” to a user who clicks a link on a mobile device, with features to control what happens when a link is clicked on iOS, Android, and Windows Phone.
App Links is, in fact, cross-platform and designed to take advantage of the way the three different platforms handle opening URLs and redirecting users to apps. While Facebook is using Intents on Android, App Links for iOS is based on URL schemes, which have long allowed developers to register unique URLs for their apps so that other apps (or users themselves) could open them programmatically (or manually). Apps that implement App Links will be able to scan a link that’s been tapped by the user and, in a matter of seconds, understand whether it can be opened inside a native app through deep-linking, fall back to a web view, or offer a way to download the app from the App Store.
On iOS, Facebook is relying on the same techniques to check for supported URLs that developers have used for years to launch apps through URL schemes, with the difference that App Links offers a unified metadata schema with platform specifications to indicate via HTML the URLs, device type, and deep-linking support of an app to another app.
I asked David Barnard (founder of Contrast, makers of popular URL scheme-based app launcher Launch Center Pro) whether App Links could substantially alter the current scenario of inter-app linking on iOS, and he noted that App Links seems primarily “focused on deep linking to content, not passing data to an app that will take action on that data”. It’s not too different from what Apple is doing with Safari and Smart App Banners, but “Facebook is doing it across platforms and native apps and is extending the idea” with code that will make it easier for developers to implement the technology in their apps.
Fundamentally, Barnard noted, “App Links doesn’t do anything new that wasn’t previously possible with URL schemes, but it provides a structured, cross-platform way to do it”, and that should be good news for developers (and users): “Facebook getting behind this means it should be more widely adopted than other deep linking solutions that already existed”, Barnard said.
Barnard noted that, while Facebook’s long-term goal may be to offer deep-linked ads within apps, in the short-term App Links “may or may not have much of an impact on productivity focused inter-app communication”, which is an aspect of iOS that is often mentioned in discussions about multitasking with iOS devices for work purposes. Still, even if limited to opening pages of content from app to app with a consistent interface and experience, App Links has the potential to improve the way people use multiple apps on mobile devices because “jumping from app to app and back is something we all do”.
Indeed, in Facebook’s current documentation for App Links there are mentions and examples of how apps will be capable of taking users back to their original position in the first app they used to open another app.
As is common when navigating to links on the web, it’s useful to give users the ability to return to apps that they came from after navigating. On some platforms, such as Android and Windows Phone, there is a built-in notion of a back button that fulfills this function.
Some platforms such as iOS, however, lack a back button. As specified in the “Navigating on iOS” section, when one app navigates to another, it may provide a
referer_app_linkwith enough information to allow the receiving app to provide a back button for its users.
With its flexibility and control it gives to developers, App Links has a chance to bridge the gap between web and mobile app content, effectively mapping websites to apps. However, it’ll take time to become a widespread solution, and developers will need to support a technology promoted by Facebook, not platform holders such as Apple, Google, or Microsoft.
App Links could benefit everyone in the mobile landscape and especially Facebook, as links tapped in the News Feed and Messenger will open native apps with a better experience and easier way to return to Facebook without losing context. Deep-linking on mobile isn’t a new affair, but existing solutions never took off. Perhaps Facebook, with an open-source technology and cross-platform support, will be able to change that.