Deshabilite completamente los botones de hardware y software

Quiero desactivar por completo los tres botones en pantalla (Atrás, Inicio, Recientes) y cualquier otro botón de hardware. Soy consciente de que no puedo hacer esto desde la aplicación ya que sería una gran falla de seguridad. ¿Cómo le haría esto a un dispositivo suponiendo que tengo el dispositivo a mano? Obtenga acceso a la raíz y luego, ¿cómo iría esto?

PD: lo que estoy tratando de hacer es que la aplicación se ejecute en mi tableta en un quiosco y no quiero que los usuarios presionen ningún botón.

Respuestas (2)

La pantalla completa tiene una función (de pago) en la que puede ocultar automáticamente las barras del sistema en ciertas aplicaciones y mostrarlas en otras aplicaciones, pero hay una versión gratuita sin la automatización.

Alternativamente, puede ocultarlos completamente sobre ADB ( fuente ) con:

adb shell
su
pm disable com.android.systemui

O (si está escribiendo su propia aplicación) puede usar este código ( fuente ):

private void hideNavigationBar(){
        try {
            Process process = Runtime.getRuntime().exec("su");
            DataOutputStream os = new DataOutputStream(process.getOutputStream());
            os.writeBytes("pm disable com.android.systemui\n");
            os.flush();
            os.writeBytes("exit\n");
            os.flush();
            process.waitFor();
            //////////////////////////////////////
        } catch (InterruptedException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

Kiosk Browser Lockdown también tiene una función en la que puede desactivar todos los cuadros de diálogo del sistema (volumen, pulsación prolongada de encendido, etc.)

Usando Xposed Framework y Xposed Additions, puede reasignar cualquier botón a cualquier acción y, en su caso, a 'Sin acción'.

Combinando esto para deshabilitar todos sus botones de hardware con esta respuesta , y logrará lo que desea.

Abre la aplicación y sigue estos pasos:

  1. Haga clic en Botones
  2. Haga clic en Agregar nueva clave
  3. Presiona la tecla que deseas deshabilitar
  4. Pulse Aceptar
  5. Haga clic en la tecla en la lista y para cada condición asigne la acción Deshabilitado