Réponses:
Pour détecter l'état d'enracinement de l'appareil, une application émet une su
commande. Si l' état de sortie est 0
, cela signifie que l'appareil est enraciné .. sinon, non.
Pour éviter cela, vous pouvez simplement Deny
accéder à la racine en utilisant la fenêtre contextuelle de SuperUser (à condition que cela soit autorisé à partir des paramètres de SuperUser, une fenêtre contextuelle apparaît lorsqu'une application émet une su
commande). Après cela, l'application obtiendra le non-zero
statut de sortie et ne pourra pas déterminer le statut d'enracinement.
Mise à jour:
certaines applications peuvent utiliser d'autres méthodes pour vérifier l'état racine (comme vérifier l' su
existence du fichier binaire). Je voudrais admettre qu'aucune n'est une méthode parfaite sans résultat faussement positif, mais parfois elle réussit avec chance.
La meilleure méthode universelle pour empêcher la détection: restreignez l'autorisation du démon de l'application. Je ne peux pas suggérer de limitations d'autorisation précises, car je ne connais pas les fonctions de l'application. Il peut gâcher les fonctionnalités de l'application.
Dans le dernier, je voudrais dire: Techniquement, il n'y a aucun moyen d'empêcher la détection par un taux de réussite de 100%. En cas de limitations d'autorisations, l'application peut toujours soupçonner que quelque chose ne va pas.
su
fichier texte à cet endroit par racine temporaire, l'application donnera un faux résultat.
Always Allow
option de SuperUser n'est pas active. Vous pouvez empêcher la détection par Always Deny
ou Deny All
trop (les textes des options peuvent varier selon la version).
J'utilise OTA Rootkeeper , qui comprend une fonction de sauvegardesu
et de déracinement temporaire du téléphone. Une fois temporairement non rooté, il peut être ré-rooté en restaurant la su
sauvegarde.
(En outre, il tente également de conserver la racine lorsque vous appliquez une mise à jour OTA à partir de votre opérateur sans fil, ce qui est une fonctionnalité vraiment intéressante.)
Voici ce qui a fonctionné pour moi:
1- Vous devez avoir installé le framework Xposed, vous pouvez l'installer ici: http://repo.xposed.info/module/de.robv.android.xposed.installer , Xposed est un framework pour les modules qui peuvent changer le comportement du système et des applications sans toucher aux fichiers APK.
2- Téléchargez le module xposed Root Cloak à partir d'ici http://repo.xposed.info/module/com.devadvance.rootcloak et activez-le.
3- Ajoutez l'application dont vous essayez de cacher la racine.
Le redémarrage sera nécessaire plusieurs fois au cours du processus.
Le superutilisateur a déjà une case à cocher temporaire non root, fonctionne très bien, testé
Cette question a déjà été posée et répondue:
Pour résumer, recherchez l'application appelée "SuperUser" (comme une suggestion).
-edit- Par suggestion si le lien descend:
Comment puis-je désactiver root sur un appareil modifié?
Si vous installez SuperUser, vous pouvez contrôler les applications autorisées à accéder à la racine. Par défaut, il bloque toutes les demandes et vous demande ce que vous voulez faire. Vous pouvez accorder un accès à une application indéfiniment et la révoquer à tout moment, ou autoriser uniquement des demandes spécifiques avec un délai d'expiration. La plupart des ROM enracinées sont livrées préinstallées, y compris CyanogenMOD, et de nombreuses méthodes d'enracinement l'installeront également pour vous.
Comme alternative, vous pouvez supprimer le su binaire et la Busybox de votre appareil pour le décompresser efficacement.
L'enracinement est réversible. Donc, si vous déracinez votre téléphone, l'application ne verra rien.
/system/xbin/su
si le binaire existe - c'est en fait un peu "plus calme" que d'essayer de l'exécutersu
, sournois je sais :)