Para detectar el estado de rooteo del dispositivo, una aplicación emite un su
comando. Si el estado de salida es 0
, significa que el dispositivo está rooteado ... de lo contrario, no.
Para evitar esto, puede simplemente Deny
acceder a la raíz utilizando la ventana emergente de SuperUser (siempre que esté permitido desde la configuración de SuperUser, aparece una ventana emergente cuando una aplicación emite un su
comando). Después de esto, la aplicación obtendránon-zero
estado de salida y no podrá determinar el estado de rooteo.
Actualización:
algunas aplicaciones pueden usar otras formas de verificar el estado raíz (como verificar elsu
existencia del archivo binario). Me gustaría admitir que ninguno es un método perfecto sin resultados falsos positivos, pero a veces tienen éxito con la suerte.
El mejor método universal para evitar la detección: restringir el permiso del demonio de la aplicación. No puedo sugerir limitaciones de permisos exactos porque no conozco las funciones de la aplicación. Puede estropear las funcionalidades de la aplicación.
En el último, me gustaría decir: Técnicamente, no hay forma de evitar la detección con una tasa de éxito del 100%. En caso de limitaciones de permisos, la aplicación aún puede sospechar que algo está mal.
/system/xbin/su
si existe - que es en realidad una "silenciosa" poco, entonces se intenta ejecutarsu
, disimulado que sé :)su
un archivo de texto en esa ubicación mediante una raíz temporal, la aplicación mostrará resultados falsos.Always Allow
opción SuperUser no esté activa. Puede evitar la detección porAlways Deny
oDeny All
también (los textos de opciones pueden variar dependiendo de la versión).Utilizo OTA Rootkeeper , que incluye una función para hacer una copia de seguridad
su
y desrootear temporalmente el teléfono. Una vez desarraigado temporalmente, puede volver a enraizar restaurando elsu
copia de seguridad.(Además, también intenta preservar la raíz cuando aplica una actualización OTA de su proveedor de servicios inalámbricos, que es una característica realmente agradable).
fuente
Esto es lo que funcionó para mí:
1- Necesitas tener Xposed Framework instalado, puedes instalarlo desde aquí: http://repo.xposed.info/module/de.robv.android.xposed.installer , Xposed es un framework para módulos que pueden cambiar el comportamiento del sistema y las aplicaciones sin tocar ningún APK.
2- Descargue el módulo xposed de Root Cloak desde aquí http://repo.xposed.info/module/com.devadvance.rootcloak y actívelo.
3- Añade la aplicación de la que intentas ocultar la raíz.
Se requerirá reiniciar un par de veces dentro del proceso.
fuente
Superusuario ya tiene una casilla de verificación de desroote temporal, funciona bien, probado
fuente
Esta pregunta ya ha sido formulada y respondida:
Para resumir, busque la aplicación llamada "Superusuario" (como una sugerencia).
-editar- Por sugerencia si el enlace se cae:
¿Cómo puedo desactivar la raíz en un dispositivo modificado?
fuente
El enraizamiento es reversible. Entonces, si desrooteas tu teléfono, la aplicación no verá nada.
fuente