Je travaille dans un lanceur pour Android ICS mais j'ai un problème avec les tablettes.
Je ne peux pas cacher la barre d'état. Je l'ai essayé dans Android 2.3.X et c'est bon. Le problème n'apparaît qu'avec Android 4.0.
Comment puis-je le cacher?
Vous ne pouvez pas vous débarrasser de la barre système des tablettes. Vous pouvez pouvez vous débarrasser de la barre de navigation et de la barre d’état sur les téléphones. Veuillez lire la section "Contrôles de visibilité de l'interface utilisateur du système" de les notes de publication du SDK d'Android 4.0 .
Vous ne pouvez pas obtenir 100% vrai plein écran dans Android 4.0.
Utilisez ce qui suit pour assombrir la barre de notification (barre d'état, barre système, par exemple)
getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LOW_PROFILE);
Et utilise ceci pour le cacher
getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_HIDE_NAVIGATION);
Et, si je me trompe, vous essayez d’atteindre un "mode kiosque". Vous pouvez obtenir un peu d'aide avec une application nommée "surelock". Ceci bloque toutes les actions "maison" et "retour".
Ce n’est pas encore parfait, mais c’est peut-être ce que nous pouvons réaliser de mieux avec Android ICS.
Il est possible de masquer la barre d'état sur un appareil Android rooté. Le programme Hidebar fait cela en tuant le processus systemui. Le programme est open source, vous pouvez donc tout lire à ce sujet dans code source .
Je sais que ma réponse arrive un peu tard, mais après avoir rassemblé des informations provenant de divers endroits, je suis tombé sur cette idée, qui fonctionne UNIQUEMENT SUR DES APPAREILS ROTATIFS:
private void KillStatusBar()
{
Process proc = null;
String ProcID = "79"; //HONEYCOMB AND OLDER
if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.ICE_CREAM_SANDWICH){
ProcID = "42"; //ICS AND NEWER
}
try {
proc = Runtime
.getRuntime()
.exec(new String[] { "su", "-c",
"service call activity "+ProcID+" s16 com.Android.systemui" });
} catch (IOException e) {
Log.w(TAG,"Failed to kill task bar (1).");
e.printStackTrace();
}
try {
proc.waitFor();
} catch (InterruptedException e) {
Log.w(TAG,"Failed to kill task bar (2).");
e.printStackTrace();
}
}
Cela devrait éliminer la barre inférieure de tout périphérique enraciné et le transformer en mode "kiosque".
Pour masquer la barre d'état et la barre de navigation dans Android 4.0, nous devrions utiliser le code ci-dessous:
LinearLayout layout = (LinearLayout)findViewById(R.id.layout);
layout.setSystemUiVisibility(View.SYSTEM_UI_FLAG_HIDE_NAVIGATION);
S'appuyant sur la réponse de ppareit.
Vous ne pouvez pas masquer la barre de navigation sur la plupart des appareils en stock. Cependant, il existe un moyen de contourner le problème si vous enracinez le périphérique est une option. Voici les étapes pour une solution:
Dans HideBar, il existe une option pour exécuter en mode «Kiosque», dans lequel il n'y a aucun moyen de ré-afficher la barre de navigation. Inutile de dire que vous avez vraiment besoin d’être prudent avec ceci .