Posts tagged with "extensions"

iOS 8 Extensions: Apple’s Plan for a Powerful App Ecosystem

Amidst the variety of announcements from WWDC 2014, Extensibility -- a new set of technologies for developers to extend their apps -- has been mainly regarded as Apple's solution to the lack of inter-app communication on iOS.

Traditionally, iOS has been a closed platform in terms of software personalization and extensibility: due to a combination of design choices and strict enforcement of sandboxing rules, iOS users never enjoyed many of the benefits found on Google's mobile operating system. Android users could, for instance, install system-wide replacement keyboards or pick documents from any app advertised as a storage location; iOS users, on the other hand, were forced to deal with unnecessary copies created by an outdated Open In system or stick with Apple's dubious keyboard design in iOS 7.

Simultaneously, with Apple focusing on Maps improvements and a new design foundation for iOS, a few third-party developers took up on the task of creating apps and protocols capable of extending iOS as much as possible leveraging the tiny holes left by Apple in its sandbox.

We've seen a proliferation of apps that use URL schemes to facilitate the process of launching other apps and passing text to them; bookmarklets -- pieces of JavaScript code executed in the browser -- to let Safari communicate with third-party apps; developers creating their own SDKs and app ecosystems to solve document management; Fleksy -- a popular Android keyboard -- making an iOS SDK; a Python interpreter and a text editor with a workflow automation system, developed by a one-man shop in Germany.

The third-party iOS development community has been incredibly creative in spite of Apple's longstanding limitations on iOS, but many of the devised solutions -- especially URL schemes -- were, ultimately, hacks and workarounds based on a protocol that wasn't intended to let multiple apps communicate and exchange data.

With iOS 8, Apple wants to make iOS more flexible and powerful by letting developers extend custom functionality and content beyond their apps, making it available to users in other parts of the OS -- and all while maintaining a secure design model, user privacy, good performance, and battery life.

As someone who's invested in iOS as a productivity platform and uses the iPad as a primary computing device every day, I welcomed Apple's move with excitement and optimism, but I also wanted to investigate the actual scope of the technology the company will ship later this year.

Read more