En este post te mostraré un plugin gratuito que te va a permitir imprimir en impresoras térmicas desde Android.

La aplicación (APK) que te enseñaré sirve como puente entre el programador y una impresora térmica conectada por Bluetooth para enviar comandos ESC POS, además de que es una app gratuita.

Con lo presentado aquí vas a poder imprimir texto, códigos QR, códigos de barras, imágenes locales, de internet o en base 64 además de otras opciones como avanzar el papel, invertir el fondo, rotar el texto, cambiar la fuente, alinear y todo lo que sea posible con comandos ESC POS de las Thermal printers.

Además, vas a poder consumir el plugin desde cualquier lenguaje de programación, pues la app que te enseño hace todo el trabajo por ti, tú solo le indicas lo que quieres imprimir desde Android de manera inalámbrica.

Funcionamiento del plugin

El plugin es, al final del día, una aplicación que deberás instalar en los teléfonos y/o tabletas en donde vayas a imprimir en impresoras térmicas. Además, el mismo debe ejecutarse en segundo plano siempre.

La app va a iniciar un servidor HTTP y va a escuchar peticiones. Cuando reciba una petición (creada a través de un conector) va a interpretarla y después va a “reenviarla” a la impresora térmica a través de Bluetooth.

Entonces tú puedes imprimir desde cualquier lugar que hable HTTP, por ejemplo, JavaScript desde el navegador web y también desde otras apps programadas con Java, Kotlin o Dart (usando Flutter).

El esquema queda así:

Cualquier cosa que hable HTTP -> Plugin -> Impresora térmica bluetooth.

Incluso podrías imprimir a través de la red usando cualquier otro lenguaje de programación. Las posibilidades son infinitas, pues mientras sepas cómo hablarle a la API expuesta por el plugin vas a poder imprimir desde cualquier lugar.

Nota importante: el plugin siempre debe estar en ejecución. Asegúrate de darle todos los permisos y deshabilitar el ahorro de energía o cosas similares (en mi Xiaomi debí elegir Sin restricciones en Ahorro de batería).

Descargar plugin

Es verdad que el plugin es totalmente gratuito y lo puedes usar sin límite. Para descargarlo ve a la siguiente página en el apartado de releases y descarga el APK: https://github.com/parzibyte/plugin-impresora-termica-bt-android/releases/latest

Desde ahora te digo que la app no es maliciosa y que los permisos que necesita están justificados para el debido funcionamiento del plugin, pero si no tienes confianza simplemente no la instales y no pasa nada.

El plugin para Android e impresoras térmicas BT debería funcionar desde Android 4.4 pero el dispositivo más antiguo que pude conseguir fue uno con Android 6.0.1.

Imprimir ticket en impresora térmica desde Android

Una vez que lo hayas instalado y dado permisos abre el plugin, debería mostrarte que ha iniciado el servidor correctamente y que tiene todos los permisos. Si no le das permisos entonces no va a iniciar el servidor y no podrás usarlo.

En caso de que todo vaya bien se verá algo así:

Comunicar Android con impresora térmica Bluetooth usando Plugin - Servidor iniciado

Comunicar Android con impresora térmica Bluetooth usando Plugin – Servidor iniciado

Ahora vamos a realizar una prueba. Asegúrate de que para este paso ya hayas emparejado tu dispositivo con la impresora y que tengas activado el Bluetooth.

Haz clic en Ver impresoras disponibles y espera a que la lista cargue. Localiza tu impresora y haz clic en Probar (yo he borrado la MAC de la captura pero mi impresora es la MTP-II):

Listar impresoras térmicas bluetooth en Android - Plugin para imprimir

Listar impresoras térmicas bluetooth en Android – Plugin para imprimir

Debería imprimirse un ticket como el siguiente:

Ticket impreso en impresora térmica bluetooth usando plugin gratuito en Android

Ticket impreso en impresora térmica bluetooth usando plugin gratuito en Android

Y si has llegado hasta ese paso, felicidades, ahora ya puedes usar el plugin para crear tus propios tickets e imprimir lo que tú quieras desde cualquier lugar. Lo que ves arriba es solo una prueba.

Próximos pasos

Ahora ya puedes usar el plugin (recuerda que debe ejecutarse en segundo plano siempre) desde cualquier lenguaje.

Actualmente existe el conector para JavaScript (así puedes imprimir desde el navegador):

Imprimir ticket en impresora térmica bluetooth desde JavaScript con Android

Y el de Android con Java:

Imprimir en impresora térmica desde Android con Java

Con la documentación del plugin puedes crear tu propio conector para consumirlo o contratarme para escribir un conector para tu plataforma favorita: https://parzibyte.me/#contacto

Licencias

El plugin es totalmente gratuito y no hay límite de nada: ni en impresión de tickets, longitud de datos ni lenguaje de programación desde donde lo consumas, pero siempre aparecerá un pie de página con mis créditos.

Si quieres remover el pie de página por favor lee el siguiente post en donde documento los detalles para obtener una licencia de uso:

Obtener licencia para plugin de impresoras térmicas Bluetooth en Android

Documentación del plugin

La documentación del plugin la encuentras en el siguiente enlace, ahí se profundiza más en los detalles:

Documentación del plugin para impresoras térmicas Bluetooth en Android


Estoy disponible para trabajar en tu proyecto o realizar tu tarea pendiente, no dudes en ponerte en contacto conmigo.
Si el post fue de tu agrado muestra tu apoyo compartiéndolo, suscribiéndote al blog, siguiéndome o realizando una donación.

Suscribir por correo

Ingresa tu correo y recibirás mis últimas entradas sobre programación, open source, bases de datos y todo lo relacionado con informática

Únete a otros 6,046 suscriptores

parzibyte

Programador freelancer listo para trabajar contigo. Aplicaciones web, móviles y de escritorio. PHP, Java, Go, Python, JavaScript, Kotlin y más :) https://parzibyte.me/blog/software-creado-por-parzibyte/

0 Comentarios

Deja un comentario

Marcador de posición del avatar

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

A %d blogueros les gusta esto: