Evite reinicios accidentales al mantener presionado el botón de encendido

A menudo termino reiniciando accidentalmente mi Nexus 6 mientras lo tengo en mi bolsillo, porque los botones de encendido se presionan durante más de 10 segundos.

Teniendo en cuenta los largos tiempos de arranque, esto puede ser muy molesto.

Puedo ver por qué es importante tener una forma de forzar el reinicio cuando se atasca, aunque todavía no he tenido este tipo de problema.

¿Hay alguna forma en que pueda cambiar el comportamiento de reinicio forzado?

Tal vez aumente el tiempo en el que se debe presionar el botón de encendido o cámbielo a una combinación de botones (es decir, subir volumen + botón de encendido durante 10 segundos) ... cualquier cosa que haga menos probable que mi bolsillo lo active.

Si puede obtener el equipo y el código para alterar el BIOS que reside en la placa base de su teléfono, puede ser posible, pero hasta donde yo sé, todos los dispositivos Android se reinician después de mantener presionado el botón de encendido durante 10 segundos. tipo de reinicio de emergencia. Imagine que su teléfono se cuelga y no le permite reiniciar, incluso tiene una batería incorporada no reemplazable; tendría que esperar hasta que la batería se agote para poder usar su teléfono nuevamente.
@GiantTree Soy consciente de por qué existe esta función y la he mencionado. Me preguntaba si alguien descubrió una manera de modificar el firmware.
No puedo evadir el reinicio forzado directamente, pero estaba pensando, ¿qué pasa si se le notifica mediante vibración que el dispositivo está en el bolsillo y el botón está atascado por mucho tiempo (como máximo 500 ms)? Eso se puede hacer. Quiero saber, ¿el dispositivo está rooteado?
Estaba a punto de decir tasker, pero no puedo encontrar una variable de botón de encendido
@Firelord, ¡esa es una idea muy interesante! No me importaría rootearlo para que funcione.
@DanB Puedes probar AutoInput con Tasker. En mi respuesta a continuación, sugerí un caso experimental. Por favor, mira si puedes hacer que funcione.
@Firelord Echaré un vistazo en la mañana, actualmente estoy buscando en línea un nuevo teléfono. Mirad los ídolos del alcatel onetouch....

Respuestas (1)

Esperaba cierta flexibilidad en el tiempo de espera de pulsación prolongada con AutoInput , pero las aplicaciones ralentizan considerablemente mi sistema operativo para hacer algo con él.

De todos modos, todo lo que sugiero es usar Xposed Additions (gratis/pago; requiere Xposed Framework ; si tiene Android 5.x, necesitará flashear algunos archivos de la recuperación personalizada. Consulte este hilo XDA de rovo89 para tal caso).

También necesitamos Tasker (pago, prueba gratuita de 7 días).

Instrucciones

(Probado en Android 5.0.2 y 5.1.1)

  1. Instale ambas aplicaciones → active el módulo de Xposed Additions → inicie Xposed Additions

  2. Toque Botones → configure el control deslizante de demora de pulsación prolongada al máximo (500 ms) → Agregar nueva tecla → presione la tecla de encendido para seleccionarlo → Encendido

  3. Toque Agregar nueva condición → Pantalla apagada → Pantalla apagada → habilitar Pulsación prolongada → Acceso directo → Acceso directo a tareas → Nueva tarea → nombre de la tarea.

    Nota: puede probar el acceso directo de MacroDroid de MacroDroid en lugar del acceso directo de tareas. La versión gratuita está restringida a una acción por macro, por lo que no obtendrá ninguna flexibilidad, pero aquí es aceptable.

  4. Para su tarea, la acción sería:

    • Alerta → VibrarTiempo : seleccione el tiempo de vibración (en milisegundos)

    Es posible que la vibración de 1000 ms no sea suficiente para usted. En ese caso, agregue una combinación de acciones. Por ejemplo, además de la última acción Vibrar, también puede hacer:

    • Tarea → Esperar → seleccione MS o/y segundos ligeramente mayores que los milisegundos seleccionados en la última acción de vibración

      La espera es importante porque si agrega acciones de vibración continuas, terminará omitiendo casi todas excepto la primera. Tasker no pone en cola las solicitudes de vibración, como me parece.

    • Ahora, agregue otra acción de Vibrar y copie y pegue todo el ciclo tanto como desee.
  5. Seleccione un icono para su tarea y listo.

Ahora puede probar su solución.


Experimental

Para los usuarios que tienen AutoInput ejecutándose satisfactoriamente, puede emular una pulsación prolongada de una tecla. Probé mi solución con la tecla Subir volumen y funcionó perfectamente. ¡Pues casi !

Para Tasker:

Perfil 1: Evento → Complemento → Entrada automática → Clave → Configuración:

  • seleccione su clave en Claves
  • seleccione Acción clave para presionar abajo

Tarea 1: Acciones:

  1. Variable → Conjunto de variables → Variable: %Set→ Hasta:0
  2. Tarea → Esperar → seleccione MS o Segundos para el tiempo de espera de pulsación larga deseado. Elija 1 segundo para fines experimentales
  3. Tarea → Si →%Set eq 0
  4. Alerta → Vibrar → Tiempo: 1000ms

Perfil 2: Evento → Complemento → Entrada automática → Clave → Configuración:

  • seleccione su clave en Claves
  • seleccione Acción clave para activar

Tarea 2: Acciones:

  1. Variable → Conjunto de variables → Variable: %Set→ Hasta:1

Use la acción Supresión de tecla de Complemento → Entrada automática → Modos, donde lo considere necesario. Además, todavía no experimenté con el estado de pantalla apagada.

Ahora, la teoría: El flujo es de esta manera:

  • Cuando se presione la tecla seleccionada (por ejemplo, Key-X), se activará el perfil 1.
  • Cuando se suelta la tecla, se activa el perfil 2.
  • Sabemos que para una pulsación prolongada, la tecla debe presionarse continuamente durante algún tiempo.
  • Ahora, si presiono prolongadamente Key-X, entonces, por el momento, el perfil 2 no se activará y, por lo tanto, puedo configurarlo %Seten 0el perfil 1 → esperar el tiempo de espera de presión prolongada (un poco menos) → verificar si %Settodavía está 0( %Setse convertiría 1en si la tecla se suelta) y luego ejecute la acción Vibrar.

¡Simple! Avíseme si funciona para la tecla de encendido.