Fraser mentioned how iOS needs a generalised “send this piece of data to apps that claim to handle it” service, just like Android.
This would be something hugely beneficial for Buffer allowing us to integrate in apps that make use of the new inter-app linking features of iOS 7 without the need to get in touch with the developers. Allowing users to install apps they use on a day to day basis to control which apps display in a new sharing menu.
Each version of iOS brings us better sharing functionality, last year Apple released UIActivity’s while these needed to be included by the apps they offered some help at quickly integrating sharing options within apps albeit without linking to them. We quickly developed one for Buffer and got it integrated in a whole stream of apps ever since, this has then developed into the SDK we have today allowing you to present the same sheet directly or through a UIActivity.
Hopefully iOS 7 allows us to set what data an app accepts through an inter-app integration system. Whether thats text, links, images or videos. One solution that could possibly work, would be something similar to the system that is used within Apple’s Maps app to display routing options from installed apps. When you develop an app you set which routing services it supports which tell the Maps app which options to display to the user at a given time. I’d hope to see a similar section in Xcode which could allow you to select which data your app accepts.
Apps that handle inter-app linking options would be able to handle the different data types via the application:openURL:sourceApplication:annotation: method as routing apps do with the Apple Maps app.
iOS would ideally also need to make the sharing menu available in all apps somehow rather than waiting for apps to integrate a specific sharing menu to truly solve the problem. This would open up inter-app linking straight from the start and would mean people didn’t need to wait for apps to include the dynamic linking menu. Maybe another option along the long press select, copy, paste, define menu which then opens a modal with the app options.
At Buffer we have included x-callback-url support in v2.4 which as of writing is in review with Apple. x-callback-url is a specification which aims to provide a standard means for developers to link to other apps has made some great advances in improving linking between apps recently with a few apps starting to support it over the past few months. The new Buffer support allows apps to open the Buffer composer within the Buffer iPhone app along with text and a link just like our normal URL Scheme. However when it is closed when an update is shared or the composer closed the source application is opened with a success or failure message. This would be an added bonus but depends on the app being linked to performing an action rather than simply “opening” a link for instance.
I’m personally excited to see what Apple do in iOS 7 around this subject. Just like last year i’ll be looking at the documentation straight away to find out what is possible and no doubt start building something while keeping up with videos from WWDC. Fingers crossed Apple include some of the power features Fraser mentions.