Saltar al contenido
WebViewGold Del vibe coding a la App Store
Español
Consigue WebViewGold

Lovable + impresión

Imprime desde tu app de Lovable con AirPrint y la impresión de Android

El botón de imprimir que funciona en el navegador suele quedarse mudo dentro de una app, porque los WebViews de las apps no gestionan window.print() como Safari o Chrome. WebViewGold le da a tu app de Lovable una alternativa nativa: printitem:// descarga un PDF o una imagen de tu servidor y abre el diálogo de impresión del sistema, AirPrint en iPhone y el servicio de impresión de Android, con Guardar como PDF como opción.

Desde $109 de pago único por plataforma, o deja que nuestro equipo lo haga todo desde $698.

  • Garantía de aprobación – o te devolvemos el dinero en 14 días
  • Sin programar
  • Pago único, actualizaciones gratuitas
  • Soporte humano 24/7
  • Hecho en Alemania desde 2014 · ISO 27001

Lo que la gente imprime desde las apps

Facturas y recibos

Herramientas para pequeños negocios, apps de reservas y marketplaces: el cliente o la tienda imprime la factura que tu backend ya genera.

Entradas, etiquetas y acreditaciones

Entradas para eventos, etiquetas de envío, acreditaciones con nombre, pases de check-in con código QR. Genéralos como PDF en el tamaño de papel adecuado e imprímelos con dos toques.

Informes, fichas y recetas

Informes semanales, fichas escolares, planes de entrenamiento, recetas y listas de comprobación que la gente todavía quiere en papel o como un PDF bien presentado.

Certificados y confirmaciones

Certificados de cursos, confirmaciones de reserva y acuerdos firmados, impresos o guardados como PDF directamente desde la pantalla en la que el usuario los ve.

Prompt para Lovable

Pega esto en Lovable para implementar la parte de la web app. Revisa el resultado, publica y luego prueba dentro de la app WebViewGold.

Prompt para pegar en Lovable
Añade impresión nativa de facturas en el envoltorio de app WebViewGold. 1) Crea una edge function de Supabase invoice-pdf que verifique al usuario, genere la factura con una biblioteca de PDF (A4 o Carta según el país del usuario), la suba a un bucket privado invoices bajo user_id/invoice_id.pdf y devuelva una URL firmada válida durante 5 minutos. 2) Añade un botón Imprimir en la página de la factura. 3) Cuando navigator.userAgent contenga WebViewGold, llama a la edge function y después asigna a window.location.href "printitem://?jobName=" + encodeURIComponent("Factura " + number) + "&printItem=" + signedUrl, dejando printItem como último parámetro. 4) En un navegador normal, abre la URL firmada para que el visor de PDF pueda imprimirla. 5) Muestra un estado de carga mientras se genera el PDF y un toast de error si falla. 6) No pongas el nombre del cliente en el nombre del archivo ni en el nombre del trabajo.

WebViewGold nos ha permitido el tiempo de mercado más corto y eficiente que jamás sea posible de todas las otras plataformas de aplicaciones que hemos probado durante los últimos 5 años. No sé por qué no lo había descubierto antes, ¡pero estoy muy, muy contento de haberlo hecho. Actualmente cerca de 6000 descargas de aplicaciones tanto en iOS App Store & Google Play Store sin ningún problema!

Antonio Davila · CodeCanyon

Añade un botón de imprimir que funcione

Alrededor de una hora, casi toda para la plantilla del PDF.

  1. Genera un archivo imprimible

    Genera la factura, la entrada o el informe como PDF (o PNG/JPG) en el servidor, en el tamaño del papel que esperas: Carta o A4, una etiqueta de 4 × 6 pulgadas, una entrada. En Android, las imágenes se escalan para ajustarse a la página.

  2. Haz que la URL sea accesible sin inicio de sesión

    La app descarga ella misma el archivo de printItem, y la documentación exige que esa URL sea accesible públicamente desde el dispositivo. Usa un enlace firmado de corta duración y mantenlo libre de & y #, por ejemplo https://app.yourdomain.com/print/8f3a2c.pdf.

  3. Llama a printitem:// desde el botón

    Navega a printitem://?jobName=Factura%20%23123&printItem=https://…/invoice.pdf. printItem es obligatorio; jobName es opcional y debe ir codificado para URL (sin él, Android muestra "Print Job"). Deja printItem al final, como en la documentación.

  4. Conserva la vía del navegador

    Detecta la app mediante el user agent personalizado que configuraste en WebViewGold. En un navegador normal, mantén window.print() o abre el PDF para que su visor lo imprima.

  5. Prueba con una impresora y con Guardar como PDF

    Imprime un PDF de varias páginas y una imagen en iPhone y en Android, y prueba Guardar como PDF. Revisa los márgenes, los saltos de página y el nombre del trabajo en la cola de impresión.

Un helper de impresión para app y navegador

El helper pide a tu servidor una URL de archivo de corta duración y elige la vía correcta. En tu app de Lovable, la ruta del PDF va en: Supabase o Lovable Cloud (Postgres, almacenamiento, edge functions).

javascript
var IN_APP = navigator.userAgent.indexOf("WebViewGold") !== -1; // tu token de user agent personalizado

async function printInvoice(invoiceId) {
  // el servidor genera un PDF y devuelve un enlace de corta duración accesible públicamente
  var res = await fetch("/api/invoices/" + invoiceId + "/print-link", { method: "POST" });
  var link = (await res.json()).url; // p. ej. https://app.yourdomain.com/print/8f3a2c.pdf

  if (IN_APP) {
    var job = encodeURIComponent("Factura " + invoiceId);
    window.location.href = "printitem://?jobName=" + job + "&printItem=" + link; // printItem al final
  } else {
    window.location.assign(link); // navegador: el visor de PDF lo imprime
  }
}

Conviene saberlo antes de publicar

  • Imprimir en sí no muestra ninguna solicitud de permiso. El archivo se guarda temporalmente en caché en el dispositivo; en Android se elimina en cuanto el trabajo entra en la cola.
  • Las impresoras de tickets Bluetooth que no admiten ni AirPrint ni el servicio de impresión de Android no están cubiertas: necesitan el SDK del fabricante, lo que implica una integración nativa a medida.
  • No incluyas datos personales en los nombres de archivo ni en los nombres de trabajo; las colas de impresión y los registros de las impresoras los conservan.
  • La impresión es una función nativa creíble para apps de negocio (facturas, entradas, etiquetas). Inclúyela en las notas de revisión junto con tus otras funciones nativas; por sí sola no basta como argumento frente a la Directriz 4.2.

Preguntas frecuentes

¿Por qué window.print() no hace nada en la app?

Los WebViews de las apps no implementan el comando de impresión del navegador como Safari y Chrome, así que la llamada no suele tener ningún efecto. printitem:// entrega en su lugar un archivo al sistema de impresión nativo, que además gestiona los PDF de varias páginas de forma más fiable.

¿Pueden los usuarios guardar un PDF en lugar de imprimir?

Sí. Android ofrece Guardar como PDF en el diálogo de impresión, y en iOS los usuarios pueden guardar o compartir el documento desde las opciones de impresión. Mucha gente usa justo eso para archivar facturas.

¿Puedo imprimir la pantalla que está viendo el usuario?

printitem:// imprime un archivo desde una URL. Genera esa vista como PDF en el servidor (la mayoría de los stacks tienen una biblioteca de PDF o un navegador headless para esto) y pasa el enlace; además, en papel queda mejor que el diseño web.

¿El archivo tiene que ser público?

Tiene que ser accesible desde el dispositivo sin tu inicio de sesión. Un enlace firmado que caduca a los pocos minutos lo consigue sin exponer las facturas de forma permanente.

Tres formas de llevar tu app a las tiendas

El mismo resultado, con distinta cantidad de trabajo por tu parte. Las tres incluyen la garantía de aprobación y soporte humano 24/7.

Hazlo tú mismo

$109 por plataforma, pago único

La licencia de WebViewGold: un proyecto de Xcode o Android Studio listo para usar. Pega tu URL, define nombre e icono, activa funciones, compila y envía. Actualizaciones gratuitas para siempre.

Ver planes en la página principal

Full Service

$698 por plataforma $798

Envíanos tu URL y tu icono. Nuestro equipo configura, compila y entrega tu app en 72 horas, en marca blanca y con los proyectos fuente. Ambas plataformas por $1,158.

Detalles del Full Service Con tecnología de WeSetupYourWebViewApp

Precios de la Oferta de invierno válidos hasta el 31 de diciembre de 2026.

¿Listo para lanzar tu app de Lovable?

Garantía de aprobación en App Store & Google Play – o te devolvemos el dinero en 14 días

¿Prefieres delegarlo? Full Service: configuramos, compilamos y entregamos en 72 horas, desde $698 por plataforma. ¿Preguntas? Chatea con nosotros 24/7.

Los reembolsos se conceden bajo las condiciones indicadas en nuestras FAQ: un rechazo por motivos ajenos al contenido por parte de Apple y/o Google, reclamado dentro de los 14 días posteriores a la compra.