Las API de Java para la tecnología inalámbrica Bluetooth (JABWT) son una especificación J2ME para API que permite que los MIDlets de Java que se ejecutan en dispositivos integrados, como teléfonos móviles, utilicen Bluetooth para la comunicación inalámbrica de corto alcance. JABWT se desarrolló como JSR-82 en el marco del Proceso de la Comunidad Java . [1]
También están disponibles implementaciones de JSR 82 para Java 2 Platform Standard Edition (J2SE).
La solicitud de especificación Java original (JSR-82) fue presentada por Motorola y Sun Microsystems [ 2] y aprobada por el Comité Ejecutivo de J2ME en septiembre de 2000. JSR-82 proporcionó la primera API Java estandarizada para protocolos Bluetooth, lo que permitió a los desarrolladores escribir aplicaciones que utilizan Bluetooth y que funcionan en todos los dispositivos que cumplen con la especificación. La primera versión de JSR-82 se publicó en marzo de 2002. La actualización más reciente de JSR-82, Maintenance Draft Review 4, se publicó en marzo de 2010. La especificación, la implementación de referencia y el kit de compatibilidad de tecnología (TCK) se mantienen en Motorola Open Source. [3]
JABWT proporciona soporte para el descubrimiento de dispositivos Bluetooth cercanos. [4] Las aplicaciones Java pueden usar la API para buscar dispositivos detectables, identificar servicios proporcionados por dispositivos descubiertos y buscar dispositivos con los que el dispositivo se comunica frecuentemente.
JABWT ofrece una API de intercambio de objetos para la transferencia de objetos de datos entre dispositivos. Por ejemplo, dos dispositivos que cumplan con el protocolo OBEX podrían intercambiar tarjetas de visita virtuales o citas del calendario.
JABWT permite la gestión del estado del dispositivo local. [5] Las aplicaciones JABWT pueden acceder a información sobre el dispositivo host (como la dirección Bluetooth), marcar su dispositivo host como detectable para otros dispositivos Bluetooth y registrarse para proporcionar servicios.
JABWT admite conexiones con distintos niveles de seguridad. Las aplicaciones que utilizan las API pueden pasar parámetros al método Connector.open() indicando el nivel de seguridad necesario para establecer una conexión con otro dispositivo.
Cientos de dispositivos móviles de diferentes fabricantes cumplen con la especificación JSR-82. [6] Google mantiene una lista de dispositivos que cumplen con la especificación JSR-82.
Hay varias implementaciones de código abierto de la especificación JSR-82 disponibles: