Mimic Google Chrome’s x-callback-url Support In Mobile Safari

Speaking of Greg Pierce, I’m intrigued by the workaround he found to mimic support for x-callback-url in Safari for iOS:

For those not familiar, it is possible to use x-callback-url support in Google Chrome on iOS to open a URL from another app, and have Chrome present a “Back” button to return to the app you opened the URL from. Safari does not offer this level of integration.

To mimic this feature in Safari, I have created an intermediate HTML page with a little javascript that can take a “url” and “x-success” parameter. If it gets these, it will load the “url” in an iframe that displays full screen, and present a “< Back” button in the top left of the screen, which when tapped will open the URL in the “x-success” parameter.

Here’s what I did: I downloaded Greg’s HTML file on my Mac, put it in my Public folder in Dropbox, and got the direct link that can be accessed by any web browser. With that, I edited the Drafts action Greg made and now I have a custom “callback page” that I can integrate with Safari and actions from Drafts, Launch Center Pro, Editorial, or Mr. Reader. I’m thinking of how I could take advantage of this solution in my workflows – the nice part: you can navigate across pages inside the frame – but I believe I will mostly use it to quickly check a webpage in Safari and go back to the previous app quickly.

It’s an interesting workaround, but still a hack. For instance, it’s not possible to dynamically generate a callback address from the address that’s currently loaded in the frame. Still, if you want to put together a basic alternative to Chrome’s excellent x-callback-URL support, check it out.