Share via Share via... Twitter LinkedIn Facebook Pinterest Telegram WhatsApp Yammer Reddit TeamsCambios recientesSend via e-MailImprimirEnlace permanente × Tabla de Contenidos Bluetooth Método para Control de Bluetooth del móvil Funcionalidades implementadas para Control de Bluetooth del móvil Bluetooth Método para Control de Bluetooth del móvil Sirve para conectarse por puerto serie a un dispositivo bluetooth. Métodos Descripción connect Conecta a la dirección MAC especificada por parámetro, o a la guardada por BluetoothSerialPort.selectBluetoothDevice disconnect Desconecta el socket bluetooth limpiamente getDiscoverableBluetoothDevices Es el resultado de BluetoothSerialPort.getDiscoverableDevices read Lee X bytes del socket bluetooth. Devuelve el resultado convertido a cadena selectBluetoothDevice Muestra una pantalla para seleccionar el dispositivo bluetooth setTimeout Define un timeout para las operaciones de lectura/escritura sleep Duerme durante X milisegundos write Funcionalidades implementadas para Control de Bluetooth del móvil Funcionalidades Implementadas Descripción Buscar Dispositivos Busca los dispositivos disponibles para conectar. Seleccionar Dispositivo Permite seleccionar dispositivo para conectar, devuelto por bluetoothSerial.getDiscoverableBluetoothDevices() y mostrado en lista de dispositivos disponibles. Conectar y escribir en puerto serie. Permite escribir en puerto serie del dispositivo previamente conectado. Conectar y leer en puerto serie. Permite leer en puerto serie del dispositivo previamente conectado. Conectar y leer en puerto serie. Recordar dispositivo Conecta sin parámetros, permite leer y recordará el último dispositivo que se seleccionó. Conectar y escribir en puerto serie. Recordar dispositivo Conecta sin parámetros, permite escribir y recordará el último dispositivo que se seleccionó. Conectar Chat Permite conexión simulando Chat entre dispositivos conectado por bluetooth Desconectar Chat Cierra Chat previamente inicializado por bluetooth. Enviar texto Envía diálogo, cadena de texto entre dispositivos conectados por el bluetooth simulando Chat Ejemplos de funciones y uso: function buscarDispositivos() { ui.showWaitDialog(); try { let lstDevices = bluetoothSerial.getDiscoverableBluetoothDevices(); if (lstDevices === null) { ui.showToast("No se encontraron dispositivos Bluetooth visibles"); } else { let sMessage = ""; for (let i = 0; i < lstDevices.length;i++) { let bluetoothDevice = lstDevices[i]; if (i !== 0) { sMessage = sMessage + "\n"; } sMessage = sMessage + bluetoothDevice.getDeviceName() + " " + bluetoothDevice.getMacAddress() + " " + bluetoothDevice.getRssi() + "dBm"; } ui.msgBox(sMessage, "Mensaje", 0); } } finally { ui.hideWaitDialog(); } } function seleccionarDispositivo() { ui.showWaitDialog(); try { bluetoothSerial.selectBluetoothDevice(); } finally { ui.hideWaitDialog(); } } function escribirPuertoSerie() { ui.showWaitDialog(); try { let bluetoothDevice = null; let lstDevices = bluetoothSerial.getDiscoverableBluetoothDevices(); if (lstDevices === null) { ui.showToast("No se encontraron dispositivos Bluetooth visibles"); } else { for (let i = 0; i < lstDevices.length;i++) { bluetoothDevice = lstDevices[i]; if (bluetoothDevice.getDeviceName() == "zebramz") { break; } else { bluetoothDevice = null; } } } if (bluetoothDevice === null) { throw "No se encontró el dispositivo zebra"; } bluetoothSerial.connect(bluetoothDevice.getMacAddress()); bluetoothSerial.write("hola que tal"); bluetoothSerial.disconnect(); } finally { ui.hideWaitDialog(); } } function leerPuertoSerie() { ui.showWaitDialog(); try { let bluetoothDevice = null; let lstDevices = bluetoothSerial.getDiscoverableBluetoothDevices(); if (lstDevices === null) { ui.showToast("No se encontraron dispositivos Bluetooth visibles"); } else { for (let i = 0; i < lstDevices.length;i++) { bluetoothDevice = lstDevices[i]; if (bluetoothDevice) { if (bluetoothDevice.getDeviceName() == "zebramz") { break; } else { bluetoothDevice = null; } } } } if (bluetoothDevice === null) { throw "No se encontró el dispositivo zebra"; } bluetoothSerial.connect(bluetoothDevice.getMacAddress()); bluetoothSerial.write("! U1 getvar \"appl.date\"\r\n"); bluetoothSerial.sleep("300"); let buffer = bluetoothSerial.read(10); bluetoothSerial.disconnect(); ui.showToast("El buffer vale: " + buffer); } finally { ui.hideWaitDialog(); } } function leerPuertoSerieRecordarDispositivo() { ui.showWaitDialog(); try { //Connect sin parámetros recordará el último dispositivo que se seleccionó bluetoothSerial.connect(); bluetoothSerial.write("! U1 getvar \"appl.date\"\r\n"); bluetoothSerial.sleep("300"); let buffer = bluetoothSerial.read(10); bluetoothSerial.disconnect(); ui.showToast("El buffer vale: " + buffer); } finally { ui.hideWaitDialog(); } } function escribirPuertoSerieRecordarDispositivo() { ui.showWaitDialog(); try { //Connect sin parámetros recordará el último dispositivo que se seleccionó bluetoothSerial.connect(); bluetoothSerial.write("hola que tal"); bluetoothSerial.sleep("3000"); bluetoothSerial.disconnect(); } finally { ui.hideWaitDialog(); } } function connectChat() { ui.showWaitDialog("Conectando..."); try { bluetoothSerial.setTimeout(10000); bluetoothSerial.connect(); ui.showSnackbar("Conectado"); } finally { ui.hideWaitDialog(); } } function disconnectChat() { ui.showWaitDialog("Desconectando..."); try { bluetoothSerial.disconnect(); ui.showSnackbar("Desconectado"); } finally { ui.hideWaitDialog(); } } function sendChat() { if (!self.MAP_TEXTO) { return; } ui.showWaitDialog("Enviando..."); try { bluetoothSerial.write(self.MAP_TEXTO); let sResponse = bluetoothSerial.read(); if (!sResponse) { throw "No hubo respuesta"; } self.MAP_CHAT = self.MAP_CHAT + "\n" + sResponse; ui.refreshValue("MAP_CHAT"); } finally { ui.hideWaitDialog(); } } Más referencias:BluetoothSerialPort