Explaining iOS 8’s Extensions

If you’re looking for a more technical overview of extensions in iOS 8, Andrew Cunningham has a great one at Ars Technica:

A simple way to summarize all of this: Apple doesn’t want one app to be able to get into another app’s sandbox. Extensions are like little sandboxes-within-sandboxes that facilitate communication between different apps while never sharing all of their containing app’s data directly with the host app.

It’s good to know that Apple is making iOS more flexible and powerful while keeping an underlying model designed for security, performance, and user control.

One of the questions I’ve received over the past few days is whether enabling a lot of extensions in iOS 8 could cause issues similar to the ones found in, for instance, Safari for OS X with multiple browser extensions installed. Based on what Apple has shown, the answer shoule be “no”: the technology is different, extensions will run in separate sandboxes, many of them will be user-triggered, and iOS will check memory usage and stop them if necessary (as Andrew notes, older devices will likely suffer for this).

It’ll be interesting to see how developers will take advantage of extensions this Fall.