iOS 6 brings prettier sharing invoked by tapping the standard Share button in apps. Unfortunately, the limitations are set by the OS, letting you share only to some Native apps like Twitter, Facebook, Email, iTunes, iMessage and more.
How Android does it
This is still miles away from where Android is. In Android, apps can listen to a broadcast event and have sharing happen between any apps that intent to listen to a valid Meta-data type say images or text. Other than that, apps can share their services, and really you can use other app’s feature, without having to re-invent the wheel. .e.g. You can use One app to change focussing (like AfterFocus), and second to add contrast, color corrections and third to set resolution and effects, and then use 4th app to share it to app like Instagram.
All this applies to any 3rd party app as much as native apps. This way, 3rd party apps on android are treated as first-class citizens. Needless to say both developers and users love it.
iOS 6, a step forward in the right direction
iCloud partially solves this by syncing documents between devices, but that’s on a per-app basis. Not all apps would have that feature and you’ve to move files to the Cloud in order to do something locally. Documents in the Cloud is usable to keep content synced across devices on a per-app basis, but other apps still can’t access each other’s private Documents folder.
Steve Jobs once said “the file system management is just gonna be an app for pros and consumers aren’t gonna need to use it”, which is just how iOS has been designed and what OS X is striving to become.
On the Mac, however, apps can lend their services to other apps through the Services menu. Many experts and bloggers speculate that iOS 6 would start adopting these features and in iOS 7, we would see a full-fledged 3rd party app support.
iOS 6′s standard Share button in Safari (left), Photos (middle) and App Store (right) apps brings up a redesigned menu with app-specific options.
Clearly you can notice how iOS 6 presents sharing options as a grid of icons instead of previous list of options. It’s also interesting how for some services like Twitter, Mail or iMessage iOS 6 uses the corresponding app’s icon.
So How would you get those sharing features on iOS? Say hello to Action Sheets (not to be confused with Share Sheet in iOS 5).
Action Sheet is what it is called. Here’ what bloggers and developers have to say about it:
If Instapaper could register as a service for that sharing sheet, however, it may make the process simpler. You wouldn’t need to deal with the hassle of installing a bookmarklet, and you could use an easier-to-access iOS function for saving articles to Instapaper.
Developers will be able to add their custom buttons to an Action Sheet; but it looks like the long-awaited Services menu won’t come with iOS 6 either.
Tweetbot supports this functionality with few hacks. When you tweet an image, you can choose to take a photo or import existing image from your library, but also choose to snap/import an image via Camera+.
This is how iOS apps could interact with one another if Apple implemented a way for them to register their capabilities with the system’s Share menu.
iOS 6 ActionSheet Apps
Google released its standalone YouTube app for iOS. That’s because iOS 6 would no longer feature the Youtube app, you’ll have to download it via App Store. Google’s Youtube app features iOS 6’s ActionSheet and several features tailored for iOS 6.
One of the most interesting aspects of the app is that it actually doesn’t allow for video uploads directly. Instead, it uses the same iOS share button (Action Sheet). The share button no longer leads to a list of boring buttons in iOS 6, but uses the new share sheet (Action Sheet), which features the icons of the apps and services that Apple approves of like Twitter, Facebook, email and Messages.
Currently, that sheet uses the same YouTube icon that has existed on iOS since day 1. Apple has always treated services that integrate with iOS in one way and third-party apps another. The integration of Twitter, various Chinese social networks and now Facebook are the first times we’ve seen there be a third-party app on iOS that also has integrated system-level sharing options. If the new icon is placed in that sharing menu, it will lead not to Apple’s now defunct built-in YouTube app, but out to a third-party app. That’s a significant change.
Now that Youtube is a 3rd party app, its not a first grade citizen. But it will still be able to share. That will mean that it is the third outside ‘network’ to get integrated into iOS after Twitter and Facebook (or maybe the first, depending on how you look at it). Other possible additions include Vimeo and Flickr, both of which are integrated into Mountain Lion, but have yet to be announced for inclusion in iOS 6.
Learning from OS X Mountain Lion
From the desktops, apple will bring the features to iOS 6.x. Apple has set up a system similar to XPC on the Mac, for iOS. It allows small processes to be run independently in order for certain tasks to be performed separately from the main functions of an app. Apple’s Mail app already uses this technique for the compose view.
How it is Done with ActionSheets
Apple has created few special view controllers, components of iOS that display objects on the screen for you, in order to make their fancy new action sheets work. And they could easily open them up for third-party developers to take advantage of as well.
So official inter-app communication, is now possible on iOS, starting with iOS 6.x.
You can share data between apps back and forth without having to use the awkward ‘Open in…’ command that iOS uses now. You could also perform commands using one app’s tools without having to actually open that app.
More announcements coming soon, stay tuned.