Developer(s) | Open Mobile Terminal Platform |
---|---|
Initial release | 16 February 2009 | at MWC 2009
Stable release | BONDI 1.1
/ 11 February 2010[1] |
Platform | Windows Mobile (reference implementation), Android, BREW, iOS[citation needed], Java, LiMo, Maemo, Palm OS, RIM[citation needed], Symbian, bada |
License | Apache 2.0 |
Website | bondi.omtp.org |
BONDI (named after Bondi Beach) is an API framework aimed at mobile devices. OMTP launched the BONDI initiative, which defined new interfaces (Javascript APIs) and a security framework (based on XACML policy description) to enable the access to mobile phone functionality (Application Invocation, Application Settings, Camera, Communications Log, Gallery, Location, Messaging, Persistent Data, Personal Information, Phone Status, User Interaction) from browser and widget engine in a secure way.
BONDI supports widget-based applications as well as web-based applications.
BONDI was initiated in 2008 by OMTP. The first BONDI widget, based on a preliminary version of the 1.0 specification was shown at MWC 2009 in February 2009.
Version 1.0 of the API specification released on June, 2nd, 2009 [2] with a maintenance release (1.01) following on July, 30th, 2009 [3]
Version 1.1 of the API was released as stable on February, 11th, 2010.[4]
In February 2010, at MWC 2010 the Samsung Wave was released as the first mobile phone to contain the BONDI as a built-in API as part of the bada platform.
At MWC 2010, The Wholesale Applications Community (WAC) announced that BONDI would be one of the technologies used.[5]
As of release 1.1, the BONDI API defines the following interfaces:[6]
The upcoming 1.5 API will add or change the following APIs:[7]
To safeguard users from malicious web applications, BONDI defines a policy layer between the API and the device. Policies can be set on a widget provider level (for signed widgets) on a widget level or on an API call-by-call level for web pages.
Every widget carries a manifest declaring the APIs to be used by that widget, allowing users to install (or deny installation) based on the function the widget intends to use.