Java APIs for Bluetooth

From Wikipedia, the free encyclopedia
Jump to: navigation, search

Java APIs for Bluetooth Wireless Technology (JABWT) is a J2ME specification for APIs that allows Java MIDlets running on embedded devices such as mobile phones to use Bluetooth for short-range wireless communication. JABWT was developed as JSR-82 under the Java Community Process.[1]

JSR 82 implementations for Java 2 Platform Standard Edition (J2SE) are also available.

Background[edit]

The original Java Specification Request (JSR-82) was submitted by Motorola and Sun Microsystems,[2] and approved by the Executive Committee for J2ME in September 2000. JSR-82 provided the first standardized Java API for Bluetooth protocols, allowing developers to write applications using Bluetooth that work on all devices conforming to the specification. The first version of JSR-82 was released in March 2002. The most recent update to JSR-82, Maintenance Draft Review 4, was released in March 2010. The specification, reference implementation, and Technology Compatibility Kit (TCK) are maintained at Motorola Open Source.[3]

Technologies and Usage[edit]

Discovery[edit]

JABWT provides support for discovery of nearby Bluetooth devices.[4] Java applications can use the API to scan for discoverable devices, identify services provided by discovered devices, and search for devices that the device frequently contacts.

Communication[edit]

After a connection with a remote device is established, JABWT specifies API calls for wireless communication. JABWT includes support for the RFCOMM and L2CAP Bluetooth data exchange protocols. Bluetooth properties of the local device can be accessed through the LocalDevice.getProperty() method.

Object Exchange APIs[edit]

Main article: OBject EXchange

JABWT provides an object exchange API for transfer of data objects between devices. For example, two devices conforming to the OBEX protocol could exchange virtual business cards or calendar appointments.

Device Management[edit]

JABWT allows management of the local device’s state.[5] JABWT applications are able to access information about the host device (such as Bluetooth address), mark their host device as discoverable to other Bluetooth devices, and register to provide services.

Security[edit]

JABWT supports connections with different levels of security. Applications using the APIs can pass parameters to the Connector.open() method indicating the level of security required to establish a connection to another device.

Compatible Devices[edit]

Hundreds of mobile devices from different manufacturers comply with the JSR-82 specification.[6] Google maintains a list of devices that conform to the JSR-82 specification.

Implementations[edit]

Several open-source implementations of the JSR-82 specification are available:

See also[edit]

External links[edit]

References[edit]

  1. ^ "Java Specification Request: JSR-82". jcp.org. Retrieved 12 February 2013. 
  2. ^ "Java Specification Request: JSR-82". jcp.org. Retrieved 12 February 2013. 
  3. ^ "Motorola Open Source". Motorola. Retrieved 12 February 2013. 
  4. ^ "Using the Java APIs for Bluetooth Wireless Technology". Oracle Technology Network. Retrieved 12 February 2013. 
  5. ^ "My Thesis - Literature Study - JSR 82". Kerjaannya Gumi. Retrieved 12 February 2013. 
  6. ^ "JSR-82 Compliant Devices". Bluecove Wiki. Retrieved 12 February 2013.