What is Safari View Controller and Why Should I Care?

Last week I sent out this tweet expressing my excitement for an update to the social news app Nuzzel.

Safari View Controller is one of my favorite features of iOS 9, but many people aren't even aware of its existence or benefits. While there are many app developers who have incorporated SVC into their apps, many others have not. Still others do not make in the primary in-app browser and require users to turn it on. So what exactly is SVC, why do I care about it, and why should you?

A History

Opening links inside an app is a fairly common experience on iOS, especially in social media apps. Users share content and links with friends and followers all the time that require viewing. Since the dawn of the App Store, developers have had two choices of how they want to handle opening these links: force the user to leave the app and open Safari, or build a custom browser inside the app. Both of these have their drawbacks for users. The first option requires closing Safari and reopening the original app to resume scrolling tweets. The second cannot offer the convenience of accessing websites users have already logged into securely in Safari and require input of usernames and passwords which have security implications for users. Less trustworthy developers could easily steal login information. Proprietary browsers also cannot run content blockers to protect users from ads and trackers. Also many times developers refuse to include basic operating system functionality in their built in browsers such as the iOS share sheet (I'm looking at you Facebook).

Enter Safari View Controller

iOS 9 brought with it several new Safari related improvements, with the biggest being Safari View Controller. SVC is an instance of Safari that can run inside of other apps. It has all of the functionality of Safari without pulling users out of an app. Users can login to websites using the 1Password extension, share websites via the share sheet, and perhaps my favorite part, run content blockers inside of other apps.

Content blockers were a highly contended feature Apple brought to iOS in September with iOS 9 as well. They allow users to block adware and malicious trackers from website to help ensure their privacy. If a user has these installed on their devices, Safari View Controller will operate with them as well.

Enabling Safari View Controller

While many app developers have enabled Safari View Controller automatically or even discarded their proprietary browsers, other have only added View Controller as a setting that the user must turn on. Unfortunately, Apple did not dictate how developers should refer to SVC so in settings, you will see options such as "Safari," "In-App Safari," and "Safari View Controller." In fact, Tweetbot just refers to it as "Tweetbot." If you choose to enable Safari View Controller in apps, it may take some experimentation on an app-to-app basis. However, for me it is worth it.

   Fiery Feeds and Tweetbot Safari View Controller Settings  

Many of the functions Safari has possessed for a few years have become essential to how I get work done on iOS, and Safari View Controller extends these capabilities easily to 3rd party apps. It has even allowed for some great apps that work around some of iOS's limitations like Sidefari. While there are some utilities like Browsecurely that allow you to open links inside of SVC in apps that don't natively have it, I have found that the majority of apps that are under active development have incorporated it already. Those that have not have been replaced as this feature has become a huge part of my workflow.

The Class Nerd @theclassnerd