2 votes

Désactiver complètement les boutons matériels et logiciels

Je veux désactiver complètement les trois boutons à l'écran (Back, Home, Recents) et tout autre bouton matériel. Je sais que je ne peux pas le faire à partir de l'application car cela constituerait une faille de sécurité majeure. Comment puis-je faire cela sur un appareil, en supposant que j'ai l'appareil en main ? Obtenir un accès Root et ensuite comment cela se passerait-il ?

Ps : Ce que j'essaie de faire, c'est de faire fonctionner l'application sur ma tablette sur un kiosque et je ne veux pas que les utilisateurs appuient sur des boutons.

3voto

Plein!écran dispose d'une fonction (payante) qui permet de masquer automatiquement les barres système dans certaines applications et de les faire disparaître dans d'autres applications, mais il existe une version gratuite sans cette automatisation.

Alternativement, vous pouvez les cacher complètement par ADB ( source ) avec :

adb shell
su
pm disable com.android.systemui

Ou (si vous écrivez votre propre application) vous pouvez utiliser ce code ( source ) :

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();
        }
    }

Verrouillage du navigateur du kiosque dispose également d'une fonction permettant de désactiver toutes les boîtes de dialogue du système (volume, alimentation par pression longue, etc.).

1voto

kfix Points 201

Utilisation de la Cadre Xposed y Ajouts Xposed vous pouvez réaffecter n'importe quel bouton à n'importe quelle action et, dans votre cas, à l'option "Aucune action".

En combinant cela pour désactiver tous vos boutons matériels avec cette réponse et vous obtiendrez ce que vous voulez.

Ouvrez l'application et suivez les étapes suivantes :

  1. Cliquez sur Boutons
  2. Cliquez sur Ajouter une nouvelle clé
  3. Appuyez sur la touche que vous voulez désactiver
  4. Appuyez sur OK
  5. Cliquez sur la clé dans la liste et, pour chaque condition, attribuez l'attribut Handicapés action

androidalle.com

AndroidAlle est une communauté de androiders où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X