J'utilise CyanogenOS 12 (dérivé de CM12), donc la solution suivante peut ne pas fonctionner sur un stock Lollipop, mais quoi qu'il en soit, c'est une solution très utile.
Les tuiles que vous pouvez basculer dans les paramètres rapides se voient attribuer des noms particuliers comme Bluetooth →. bt
, Wi-Fi -> wifi
Paysage/Portrait rotation
et bien d'autres, et ces noms sont stockés comme une valeur pour la clé sysui_qs_tiles
sous la table secure
de settings.db
(Stockage des paramètres).
Si ces tuiles peuvent être supprimées/réorganisées à partir de l'interface utilisateur des paramètres, la ligne de commande peut également être envisagée pour réaliser cette tâche.
La commande correspondante est settings
et son utilisation est mentionnée comme suit :
usage: settings [--user NUM] get namespace key
settings [--user NUM] put namespace key value
settings [--user NUM] delete namespace key
'namespace' is one of {system, secure, global}, case-insensitive
If '--user NUM' is not given, the operations are performed on the owner user.
Il vous faut ADB dans votre machine avant de poursuivre. Alternativement, si l'appareil est enraciné, vous pouvez utiliser une application de terminal comme Émulateur de terminal pour Android .
Nota: ADB en mode sans fil mai s'avérer dangereux si l'appareil ne prend pas en charge l'authentification d'un client avant de lui donner accès. Procédez à vos risques et périls !
Nous devons d'abord trouver la valeur stockée dans la clé sysui_qs_tiles
et pour ce faire, entrez dans un terminal la commande :
adb shell settings get secure sysui_qs_tiles
Pour les appareils enracinés utilisant l'application terminal :
su
settings get secure sysui_qs_tiles
Le résultat serait le suivant :
wifi,bt,cell,rotation,flashlight,hotspot,location,airplane
Maintenant, si je veux enlever Mode avion à partir des Paramètres rapides ou voulez Wi-Fi à afficher après Hotspot alors les commandes dans un ordre respectif seraient :
adb shell settings put secure sysui_qs_tiles wifi,bt,cell,rotation,flashlight,hotspot,location
adb shell settings put secure sysui_qs_tiles bt,cell,rotation,flashlight,hotspot,wifi,location
Pour les appareils enracinés utilisant l'application terminal :
su
settings put secure sysui_qs_tiles wifi,bt,cell,rotation,flashlight,hotspot,location
settings put secure sysui_qs_tiles bt,cell,rotation,flashlight,hotspot,wifi,location
Maintenant, revenons à l'exigence, c'est-à-dire, " masquer les paramètres rapides sur l'écran de verrouillage ". Vous pouvez utiliser un automatisation outil comme Tasker pour supprimer les tuiles des Paramètres rapides lorsque l'écran est verrouillé, et les rajouter lorsque l'écran est déverrouillé.
Avant de procéder à Tasker's usage, je dois mentionner que settings
ne peut être utilisée qu'avec ADB sur des appareils non enracinés en raison des privilèges plus élevés requis par rapport à ceux accordés à un utilisateur ordinaire, et donc pour l'automatisation dans le cadre de l'initiative Tasker l'appareil doit avoir ADB en mode sans fil. Pour ce faire, voir :
Instructions pour Tasker
-
Créez une tâche nommée "Tiles s-unlocked".
-
Ajouter une action comme Code → Exécuter le shell et ajoutez ces détails :
Commande : adb connect localhost:<PORT>; adb shell settings put secure sysui_qs_tiles wifi,bt,cell,rotation,flashlight,hotspot,location
Pour les appareils enracinés, les détails seraient les suivants :
-
Commande :
settings put secure sysui_qs_tiles wifi,bt,cell,rotation,flashlight,hotspot,location
- Vérifiez Utiliser la racine
Pour les cas où cela compte :
- Utilice
<PORT>
comme le numéro de port sur lequel ADB wireless fonctionne comme 5555
- A la place de
wifi,bt,cell,rotation,flashlight,hotspot,location
utiliser les noms des tuiles que vous souhaitez ou que vous avez dans les réglages rapides
-
Créez une autre tâche nommée "Tuiles s-locked".
-
Note : Si vous avez configuré les paramètres de manière à ce que l'écran ne se verrouille pas juste après la mise en veille de l'appareil, mais après XY secondes (par ex. 30
secondes), puis créez une action comme Tâche → Attente et définir ces XY Secondes . Alternativement, sleep XY
peut être utilisé à l'étape suivante sous la rubrique Commande . Arielle a suggéré l'idée .
-
Ajouter une autre action comme Code → Exécuter le shell et ajoutez ces détails :
Commande : adb connect localhost:<PORT>; adb shell settings put secure sysui_qs_tiles ' '
Pour les appareils enracinés, les détails seraient les suivants :
-
Commande :
settings put secure sysui_qs_tiles ' '
- Vérifiez Utiliser la racine
-
Créez un profil nommé "S-unlocked" sous Événement → Affichage → Affichage déverrouillé choisissez Highest
Priorité et lier la tâche "Tuiles s-débloquées".
-
Créer un autre profil nommé "S-locked" sous Événement → Affichage → Affichage désactivé choisissez Highest
Priorité et lier la tâche "Tuiles s-locked".
-
Avez le Tasker activé, et retenir l'action souhaitée en verrouillant/déverrouillant l'écran.
(Cliquez sur l'image pour l'agrandir)
Ordre des images comme "Pas de tuiles lorsque l'écran est verrouillé" → "Tuiles lorsque l'écran est déverrouillé".
(Cliquez sur l'image pour l'agrandir)
Faites-moi savoir si ma solution fonctionne sur un appareil fonctionnant sous Stock Lollipop.