Need Javascript bookmark (bookmarklet) installation method in Safari/iPhone OS

Number:rdar://6589436 Date Originated:2009/02/15
Status:Duplicate/5901647 Resolved:
Product:iPhone SDK Product Version:
Classification:Enhancement Reproducible:n/a
Many web apps and native iPhone applications use Javascript bookmarks (bookmarklets) for core or enhanced functionality. On Mac and PC computers, installing these is a simple drag-and-drop. But on the iPhone, there is *no* reasonable way to install them. The only known method is highly user-unfriendly, requiring them to bookmark a page with a specially crafted URL, save the bookmark, then immediately edit the bookmark, manually move the insertion point across raw Javascript code, and manually delete a section of the specially crafted URL.

I make Instapaper Free and Instapaper Pro. Together, the Instapaper apps have been installed by 230,000 iPhone and iPod touch users and received critical acclaim, including being featured by Apple in the App Store and being named to TIME Magazine's Top 10 iPhone Apps of 2008. 

Instapaper relies on a Javascript bookmarklet to function, but I've seen over 50% user abandonment rate before the bookmarklet was installed. I get emails from frustrated users *every day* who can't figure out how to install the bookmarklet.

Even with screenshots and step-by-step instructions, the abandonment rate remains at over 50%. I tell many users to just install it in Safari and sync their bookmarks to their device with iTunes, but *many* users don't understand how to do that or just refuse to sync their bookmarks for other reasons. 

We need a way to install bookmarklets from the device directly without asking our users to jump through hoops and likely give up and abandon our products or the features that rely on bookmarklets.

Proposed solution:

- Have a way for web apps, iPhone SDK apps, or both to invoke a dialog that prompts the user to install a bookmark with a specified title and URL into their Mobile Safari bookmark list.

Possible means:

- An iPhone OS URL scheme (which could work from Safari and UIApplication's openURL: call)
- A new Javascript function call, e.g. "window._webkit.addBookmark(url, title)"
- A new function call in the SDK, possibly on UIApplication

A similar problem and a proposed solution has been reported already by Craig Hockenberry, another prominent developer: rdar://5935641

Thank you for your time.


Please note: Reports posted here will not necessarily be seen by Apple. All problems should be submitted at before they are posted here. Please only post information for Radars that you have filed yourself, and please do not include Apple confidential information in your posts. Thank you!