iOS Sharing Across Apps

I tend to use my iPhone for a lot of things on a day-to-day basis. I watch my Twitter stream, send links from Twitter to Pocket viewing, and on occasion I write weblog posts from WordPress for iOS. Yes, all from my phone.

The read later piece from Twitterrific to Pocket works flawlessly, I’m very pleased with that, but once it arrives at Pocket I feel like it’s a bit difficult to create a new weblog post.

Here’s what I want, from Pocket, but it could start with any application that can view a web page. In this case I’d like to go from Pocket to WordPress for iOS, or Tumblr for iOS. Bits of this work for the Pocket to Tumblr for iOS case, it just falls short.

Select a bit of the article. Say, a paragraph, or a sentence

Tap on the Share button

Select WordPress from the menu

Pocket would launch WordPress and create a new weblog post to my default weblog.

I’d like to have the ability to control the formatting template for the new post, but I think we need a standard way to share between iOS applications. David Barnard, of App Cubby, has done a great job with Launch Center Pro encouraging companies to support custom URL schemes so applications can communicate with each other, but we need more.

Custom URL Schemes is something I haven’t done in an iOS application, so some of these requests may be unreasonable, but here goes.

Would it be possible to declare a standard JSON format, much in the way RSS is a standard, that would allow applications to pass clips of data to each other? As part of the URL scheme (I’m not sure how long a URL scheme can be), or via the clipboard. I’m not sure if an iOS developer can control what goes on the clipboard, but if you can, what about something that includes the following.

Source Site Name – Blog > Apple Core Labs

Source URL – E.G. http://blog.applecorelabs.com/2012/04/18/open-for-business/

Snippet – This would be the selected text, say, from Pocket.

Here’s what the JSON may look like.

{
"newWeblogPost":
{
"sourceSiteName:" "Blog > Apple Core Labs",
"sourceURL:" "http://blog.applecorelabs.com/2012/04/18/open-for-business/",
"snippet:" "Are you looking for a partner to help make your iOS dream application a reality?"
}
}

I think that’s enough for starters.

If applications could also agree on supporting a standard set of URL scheme resources, I think we could achieve much of what I’m after.

What if WordPress accepted this?

wordpress:///newPostWithStandard?content

Now, like I said earlier, this may not be possible because the string appended to the resource, the part after the ‘?’, may make the URL too long. If we can control what’s put on the clipboard, here again I’m a bit naive, it could allow us to communicate between the two applications. If the ‘newPostWithStandard’ was handled by the receiver, and we could put formatted text on the clipboard, we can now execute a custom command to create a new weblog post using the data in our JSON formatted clipboard data.

The best support, of course, would be from Apple in the form of a system accepted sharing API. We can only hope.