7 votes

Comment définir un utilisateur restreint comme utilisateur par défaut au redémarrage ?

Nous aimerions qu'un compte utilisateur restreint déjà ajouté soit le compte par défaut lorsque nous redémarrons nos tablettes Samsung SM-T580.

Actuellement, nous avons 2 comptes installés, Admin et User. L'utilisateur est un utilisateur avec un accès restreint.

Les tablettes sont enracinées

J'espère que quelqu'un a une solution à notre question

3voto

Firelord Points 23064

Je propose deux solutions. Toutes deux nécessitent un accès Root, et toutes deux ont été testées sur un OnePlus 6 fonctionnant sous Android 10.

Solution n° 1

Ayez le script suivant (appelons-le switch-user.sh ) s'exécutent pendant le démarrage mais après que l'utilisateur ait saisi les informations de décryptage du dispositif (PIN/mot de passe).

#!/system/bin/sh

while true; do
        flag=\`/system/bin/getprop vold.fbe.decrypted\`
        if \[ $flag \]; then
                sleep 1;
                /system/bin/am switch-user USER\_ID          # replace USER\_ID term with restricted user's id
                exit;
        else 
                sleep 1;
        fi
done

Ce script vérifie en permanence (avec un délai de 1 seconde) si l'utilisateur a décrypté le dispositif ou non. Si c'est le cas, il passe à l'utilisateur restreint après une seconde, ou continue à revérifier. Puisque l'ID utilisateur de mon utilisateur restreint est 10 J'ai utilisé 10 comme USER_ID dans celui-ci. Remplacez-le par l'identifiant de l'utilisateur restreint. Voir ma réponse ici si vous avez besoin d'aide pour trouver l'ID utilisateur.

Nota : Dans le script ci-dessus, je vérifie la valeur de la propriété. vold.fbe.decrypted qui fonctionne pour mon OnePlus 6 sous Android 10. Votre appareil peut ou non avoir la même propriété. Vous pouvez rechercher la propriété appropriée en regardant la sortie de la commande adb shell 'getprop | grep vold' . Sinon, voyez si sys.user.0.ce_available est disponible dans votre version d'Android.

La prochaine chose à faire est de placer ce script à un endroit de votre Android d'où le système l'exécutera de lui-même lors du démarrage. Comme j'utilise Magisk, j'ai placé ce switch-user.sh dans le répertoire /data/adb/service.d (voir l'article de Magisk Scripts de démarrage pour plus d'informations à ce sujet) et j'ai ajouté l'autorisation d'exécution en utilisant la commande :

adb shell su -c 'chmod +x /data/adb/service.d/switch-user.sh'

Si vous n'utilisez pas Magisk, vous pouvez vous aider des réponses à l'adresse suivante Comment puis-je exécuter un script au démarrage ?

Redémarrez l'appareil pour voir si votre script fonctionne. Dans mon cas, chaque fois que j'entre mon PIN pour décrypter l'appareil, le système passe automatiquement à mon utilisateur restreint dans les deux-trois secondes qui suivent.


Solution n° 2

Si vous ne voulez pas vous embêter à injecter un script dans le processus de démarrage, vous pouvez configurer une application d'automatisation qui basculerait Android vers votre utilisateur restreint dès qu'il recevrait le message BOOT_COMPLETED, ou en d'autres termes, qui ferait quelque chose pendant le démarrage.

Je peux suggérer Tasker et MacroDroid car je les ai essayés et ils ont fonctionné sur Genymotion avec Android 6.0 et sur un OnePlus 6 avec Android 10. Vous pouvez essayer n'importe quelle application qui peut exécuter une commande/script au démarrage.

Tasker

Pour Tasker, le profil et la tâche devraient être les suivants :

Profil : Événement Dispositif de démarrage

Tâche : Code Run Shell :

  • Commande : su 2000 -c am switch-user USER_ID
  • tique Utiliser la racine
  • laisser le reste des paramètres inchangés

Veillez à remplacer USER_ID avec l'identifiant réel de l'utilisateur restreint.

MacroDroid

Pour MacroDroid, la macro devrait être la suivante :

Déclencheur : Événements relatifs au dispositif Démarrage du dispositif

Action : Applications Shell Script :

  • tique Enraciné
  • Entrez la commande suivante dans " Entrez le script champ " : su 2000 -c am switch-user USER_ID
  • laissez le reste des paramètres inchangés.

Veillez à remplacer USER_ID avec l'identifiant réel de l'utilisateur restreint. Voir ma réponse ici si vous avez besoin d'aide pour trouver l'ID utilisateur.

Nota: Étant donné que de nombreuses applications sont en concurrence pour exécuter leurs fonctions XYZ au démarrage, vous pouvez constater un délai de quelques secondes avant que le changement d'utilisateur n'ait lieu.

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