Java APIs for Bluetooth

From Wikipedia, the free encyclopedia

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.


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]


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.

Object Exchange APIs[edit]

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.


JABWT supports connections with different levels of security. Applications using the APIs can pass parameters to the 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.


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

  • AvetanaBluetooth Implementation
  • BlueCove: Java Library for Bluetooth

See also[edit]


  1. ^ "Java Specification Request: JSR-82". Retrieved 12 February 2013.
  2. ^ "Java Specification Request: JSR-82". Retrieved 12 February 2013.
  3. ^ "Motorola Open Source". Motorola. Archived from the original on 29 July 2007. 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. June 2008. Retrieved 12 February 2013.
  6. ^ "JSR-82 Compliant Devices". Bluecove Wiki. Retrieved 3 June 2021.