7 votos

¿Puedo evitar que Android se inicie en modo seguro por completo?

Tengo un Nexus 5 (hammerhead) corriendo CyanogenMod 11.

El botón basculante de bajar el volumen está dañado de tal manera que está atascado en ( aparentemente un modo de fallo común después de más de 2 años ).

El único problema real del dispositivo es que siempre arranca en modo seguro, debido al botón atascado.

¿Hay alguna forma de desactivar la activación de bajar el volumen del modo seguro, para poder arrancar mi teléfono en el modo normal y completo de Android?

4voto

Chris Joyce Puntos 1

La forma correcta de hacerlo

Desactivar el roto VOLUME DOWN clave mediante la edición de /system/usr/keylayout/gpio-keys.kl y /system/usr/keylayout/Generic.kl como root y comentando esa clave. Instrucciones más largas en esta respuesta .

Enfoque tonto y difícil que más o menos me ha funcionado

Esta es una solución fea pero a mí me funciona. Es una solución "atada" que requiere adb para hacer repetidos "reinicios suaves" (reiniciar el Proceso del cigoto en Android ).

Este bash script reinicia repetidamente el proceso de Android Zygote hasta que detecta que el dispositivo no está en modo seguro. Tarda unos 20-50 reinicios hasta que mi dispositivo tiene suerte al azar y no se reinicia en modo seguro

#!/bin/sh
n=0
g=0
while true; do
    safe_mode=$(adb shell dumpsys display | egrep -o 'mSafeMode=\w+' | cut -d= -f2)
    case "$safe_mode" in
    true)
        n=$(( $n + 1 ))
        g=0
        echo "In safe mode, rebooting (try #${n}) ..."
        adb shell "su root -- killall zygote"
        ;;
    false)
        g=$(( $g + 1 ))
        [[ $g -gt 2 ]] && break;
        echo "Appears not to be in safe mode, will check again ..."
        ;;
    *)
        echo "adb shell dumpsys display failed" ;;
    esac
    sleep 15
done

adb shell dumpsys power | grep -q 'mScreenOn=false' && \
    adb shell input keyevent = POWER

echo "Escaped from safe mode after ${n} reboots. Whew."

Esta pregunta relacionada y esta respuesta me dio lo que necesitaba para resolverlo.

PreguntAndroid.com

PreguntAndroid es una comunidad de usuarios de Android en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X