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

Lovable + linterna

Control de la linterna para tu app de Lovable

Leer un número de serie en un almacén a oscuras, revisar un contador en un sótano, encontrar tu asiento en un concierto: a veces tu app de Lovable solo necesita luz. WebViewGold enciende y apaga la linterna del teléfono con dos enlaces, enableflashlight:// y disableflashlight://, en iOS y Android. Es una función pequeña que funciona mejor como ayuda dentro de un flujo de trabajo más amplio.

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

Dónde se gana su sitio un botón de luz

Apps de escáner e inventario

Un interruptor de luz junto al botón de escanear ayuda a leer etiquetas, números de serie y contadores en almacenes, sótanos y garajes. Prueba en tus dispositivos si la luz sigue encendida mientras la cámara del escáner nativo está abierta.

Apps de campo, exterior y eventos

Listas de inspección para técnicos, guías de senderismo y camping, personal que revisa entradas en un acceso a oscuras. La luz está en la pantalla donde se hace el trabajo.

Ayudas de accesibilidad

Un botón de luz grande y bien etiquetado para usuarios que necesitan luz para leer un menú, un cartel o un documento impreso. La documentación de WebViewGold menciona la accesibilidad como caso de uso.

Juegos y búsquedas del tesoro

La luz como señal o recompensa en una app de trivia, escape room o búsqueda del tesoro. Mantén los efectos lentos; los destellos rápidos resultan molestos y pueden ser un riesgo para usuarios fotosensibles.

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 un interruptor de linterna para el envoltorio de app WebViewGold. 1) Crea src/components/LightToggle.tsx, que se renderice solo cuando navigator.userAgent contenga mi token personalizado de WebViewGold. 2) Al tocarlo, cambia un estado local y asigna enableflashlight:// o disableflashlight:// a window.location.href; la etiqueta dice Encender luz o Apagar luz y el botón tiene aria-pressed. 3) Usa useLocation de React Router para llamar a disableflashlight:// siempre que cambie la ruta con la luz encendida. 4) Coloca el interruptor junto al botón Escanear en la pantalla de inventario, no en la navegación principal. 5) Ocúltalo cuando el user agent contenga mi token de iPad, porque muchos iPads no tienen flash. 6) No añadas efectos de parpadeo ni estroboscópicos.

Mi WebView de iOS finalmente está aprobada. ¡Gracias!

Taha Farooqui · CodeCanyon

Añade un interruptor de luz a tu web app

Unos 15 minutos.

  1. Añade un interruptor con un estado claro

    Dentro de la app navega a enableflashlight:// o disableflashlight://. En un navegador, ocúltalo: los sitios web no pueden controlar la linterna de forma fiable en todos los navegadores.

  2. Detecta la app

    Configura un user agent personalizado que contenga un token como WebViewGold (useragent_iphone y useragent_ipad en Config.swift, USER_AGENT en Config.java) y muestra el botón solo cuando esté presente. Un user agent distinto para iPad te permite ocultarlo en iPads sin flash.

  3. Recuerda tú el estado

    La documentación describe comandos de encendido y apagado, no una lectura del estado. Guarda el estado en la web app y restablece la etiqueta al cargar la página.

  4. Apágala cuando el usuario salga

    Llama a disableflashlight:// cuando el usuario salga de la pantalla, para que la luz no agote la batería en un bolsillo. En iOS, lanza una llamada al puente por toque en lugar de varias en el mismo script.

  5. Revisa los permisos

    La documentación pide las entradas del permiso de cámara (Info.plist en iOS, AndroidManifest.xml en Android), porque la linterna forma parte del hardware de la cámara. En iOS, kFlashLightEnabled en Config.swift no debe ser false, o las llamadas se bloquean.

Un interruptor que se oculta en el navegador

Código puramente de front end; en tu backend no cambia nada.

javascript
// User agent personalizado con "WebViewGold", definido en Config.swift / Config.java
var IN_APP = navigator.userAgent.indexOf("WebViewGold") !== -1;
var lightOn = false;

function initLightButton(btn) {
  if (!IN_APP) { btn.hidden = true; return; }   // navegadores: sin control de la linterna
  btn.addEventListener("click", function () {
    lightOn = !lightOn;
    window.location.href = lightOn ? "enableflashlight://" : "disableflashlight://";
    btn.textContent = lightOn ? "Apagar luz" : "Encender luz";
    btn.setAttribute("aria-pressed", String(lightOn));
  });
}

// llamar cuando el usuario sale de la pantalla (cambio de ruta)
function lightOffOnLeave() {
  if (IN_APP && lightOn) { lightOn = false; window.location.href = "disableflashlight://"; }
}

Revisión de las tiendas: qué esperar

  • La directriz 4.3(b) de Apple cita las apps de linterna entre las categorías ya saturadas: no se aceptan nuevas salvo que ofrezcan una experiencia significativamente distinta. Incluye la luz como ayuda dentro de un flujo de trabajo real, nunca como función principal. Consulta la directriz 4.3 explicada.
  • Escribe una descripción de uso de la cámara concreta ("para encender la linterna mientras escaneas etiquetas"), no una frase genérica. Consulta permisos y descripciones de uso.
  • Si la app no usa la cámara para nada más, indica al revisor en las notas de revisión dónde está el botón de luz, para que el permiso de cámara no parezca sin uso.
  • Evita efectos estroboscópicos o de parpadeo SOS con intervalos rápidos. Pueden provocar reacciones en personas fotosensibles y en la revisión parecen un truco barato.

Preguntas frecuentes

¿Puede un sitio web encender la linterna?

No de forma fiable en todos los navegadores. Dentro de una app de WebViewGold, enableflashlight:// y disableflashlight:// controlan la linterna en iOS y Android.

¿Aceptará Apple una app cuya función principal sea una linterna?

Es muy poco probable. La directriz 4.3(b) incluye las apps de linterna entre las categorías saturadas que necesitan una experiencia significativamente distinta. Como ayuda dentro de una app de escáner, inventario o servicio técnico, la luz no es ningún problema.

¿Por qué necesito un permiso de cámara para la luz?

La linterna forma parte del hardware de la cámara, y la documentación de WebViewGold pide las entradas del permiso de cámara en Info.plist y AndroidManifest.xml. Redacta la descripción de uso de forma que mencione la luz.

¿Puede mi app de Lovable saber si la luz está encendida?

La documentación solo describe los comandos de encendido y apagado. Guarda el estado en la web app y apaga la luz cuando el usuario salga de la pantalla.

¿Funciona la linterna en iPad?

Solo en los modelos de iPad con flash trasero; muchos iPads no lo tienen. Da a los iPads su propio user agent (useragent_ipad) y oculta allí el botón, o muestra un mensaje amable.

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.