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.

Unlock More with Club MacStories

Founded in 2015, Club MacStories has delivered exclusive content every week for over six years.

In that time, members have enjoyed nearly 400 weekly and monthly newsletters packed with more of your favorite MacStories writing as well as Club-only podcasts, eBooks, discounts on apps, icons, and services. Join today, and you’ll get everything new that we publish every week, plus access to our entire archive of back issues and downloadable perks.

The Club expanded in 2021 with Club MacStories+ and Club Premier. Club MacStories+ members enjoy even more exclusive stories, a vibrant Discord community, a rotating roster of app discounts, and more. And, with Club Premier, you get everything we offer at every Club level plus an extended, ad-free version of our podcast AppStories that is delivered early each week in high-bitrate audio.

Choose the Club plan that’s right for you:

  • Club MacStories: Weekly and monthly newsletters via email and the web that are brimming with app collections, tips, automation workflows, longform writing, a Club-only podcast, periodic giveaways, and more;
  • Club MacStories+: Everything that Club MacStories offers, plus exclusive content like Federico’s Automation Academy and John’s Macintosh Desktop Experience, a powerful web app for searching and exploring over 6 years of content and creating custom RSS feeds of Club content, an active Discord community, and a rotating collection of discounts, and more;
  • Club Premier: Everything in from our other plans and AppStories+, an extended version of our flagship podcast that’s delivered early, ad-free, and in high-bitrate audio.