This Week's Sponsor:

Winterfest 2024

The Festival of Artisanal Software


Different Share Sheets

Alvaro Serrano makes a great point about share sheets and extensions in apps updated for iOS 8:

With Reeder’s iOS 8 update, this means Reeder users now have two different ways to send an article to Instapaper: they can use the app’s built-in Instapaper integration, or they can use the Instapaper Extension via the Share Sheet. This looks redundant, but there’s a catch.

In order to use the Instapaper Extension, the Instapaper app must be installed on the device. But what happens if you don’t want to have Instapaper on that particular device? What if, for instance, you browse through your RSS feeds on your iPhone but only read articles on your iPad? In order to do that using Extensions, you’d need to have Instapaper installed on both devices. Using Reeder’s built-in Instapaper integration, however, you’d only need to have it installed on the iPad, which is where you’re actually going to use it.

He uses the latest Reeder as an example, but the same is also true for Unread, Dispatch, and other apps that used to have custom sharing options before iOS 8.

For developers, there are several trade-offs involved with keeping old sharing options and implementing Apple’s new action and share extensions. Do you want to handle user credentials for web services like Instapaper and Pocket, bundling a custom sharing menu that you have to manage? That would also give you more control over the entire sharing feature – for instance, users may be able to activate the service anywhere and not just from a share sheet. As an example, think of how Tweetbot could show read-later options before the iOS 8 update.

On the other hand, extensions free you, as a developer, from the burden of asking users to enter their credentials, designing a login flow, implementing error checking, or creating a UI for each supported option. You just need to support the system share sheet and pray that it’ll work. And, obviously, iOS 8 extensions will give you all the benefits of a unified system: they’re secure, they have an interface designed by their own developer, and they work consistently with other apps.

For now, I don’t think pre-iOS 8 share sheets with hard-coded options will be going away. But as the extension system matures and developers start releasing new apps for iOS 8, I believe that the need for custom sharing options will naturally decrease, letting native extensions take over and benefiting users and developers.

Access Extra Content and Perks

Founded in 2015, Club MacStories has delivered exclusive content every week for nearly a decade.

What started with weekly and monthly email newsletters has blossomed into a family of memberships designed every MacStories fan.

Learn more here and from our Club FAQs.

Club MacStories: Weekly and monthly newsletters via email and the web that are brimming with apps, tips, automation workflows, longform writing, early access to the MacStories Unwind podcast, periodic giveaways, and more;

Club MacStories+: Everything that Club MacStories offers, plus an active Discord community, advanced search and custom RSS features for exploring the Club’s entire back catalog, bonus columns, and dozens of app discounts;

Club Premier: All of the above and AppStories+, an extended version of our flagship podcast that’s delivered early, ad-free, and in high-bitrate audio.