No sé cómo detectar una pulsación del botón de subir/bajar el volumen durante 'n' segundos, así que daría una solución alternativa. Tendrías que instalar Xposed Additions Pro y Linterna TeslaLED . El primero necesita acceso a root y Marco de Xposición instalado.
Instrucciones
-
Visita mi respuesta aquí . Bajo el título " Instrucciones para las adiciones de Xposed " siga los pasos 1-6.
-
Para el paso 7, elija Pantalla apagada en lugar de otros.
-
Toca la entrada recién creada, activa Largo de la prensa marcando la casilla de verificación, y luego pulse sobre Largo de la prensa .
-
Desplácese hacia abajo y seleccione Atajo → Cambio de TeslaLED . Mostrará una pantalla como:
(Haga clic en la imagen para ampliarla)
-
Además, el retraso de 2-3 segundos es demasiado grande en mi opinión. De todas formas, la aplicación no permite un retraso de más de 500ms y puedes configurar en paso 2 de mi respuesta vinculada. Me conformé con 250ms.
Puedes usar Tasker en lugar de usar la aplicación TeslaLED (oficialmente recomendado ) pero no hay garantía de que el método nativo funcione. De hecho, algunos usuarios informaron que incluso la última aplicación no les funcionaba.
La acción en Tasker para activar la antorcha es Alerta → Antorcha . Aparecería en color rojo si no está soportado en su dispositivo.
Hay otras formas de mencionar en esto El hilo de Reddit que parece ser un dispositivo específico pero que sin embargo podría darte una pista para mejores resultados de búsqueda en la web.
Por ejemplo, en mi One Plus One corriendo CM12 no hay ninguna clase llamada camera
y mucho menos un archivo /sys/class/camera/flash/rear_flash
. Pero tiene una clase leds
y el archivo /sys/class/leds/led:flash_torch/brightness
también. El brillo predeterminado de la antorcha en mi dispositivo está configurado a 53 en lugar de 100.
También probé el plugin Tasker Autointroducción pero no parece soportar los botones de hardware de pulsación larga.