Basics
Where to start
It’s always a good idea to read through, at least, the release thread for information about what Magisk is and how to get MagiskHide working. Other useful information can be found in the official Magisk Documentation over on GitHub and the support thread.Requirements
- Enabled MagiskHide (from Magisk v20.4 it is disabled by default).
- A Linux kernel version of at least version 3.8 or a kernel that has the necessary features (mount namespace) backported. For kernels lacking this feature, the relevant patches are: set CONFIG_NAMESPACES=y in defconfig, and apply this patch. More info in this article: Namespace file descriptors.
Magisk can hide
- Magisk and most modules (it depends on what the module does).
- MagiskSU.
- Unlocked bootloader on device not using hardware backed key attestation (also see under "Magisk can not hide").
- Permissive SELinux (most of the time. There have been reports that a permissive SELinux triggers SafetyNet even with MagiskHide enabled). But, just don't keep SELinux permissive... It's never a good idea.
- Some prop values (see "Sensitive props").
- The Magisk app (separate option in the app settings).
Magisk can not hide
- Other known root apps (see "Detecting apps requiring root").
- Remnants of previous root method, including any root management apps (a good way to remove most remnants of root is osm0sis unSU script).
- Files and folders on your device (TWRP, Titanium Backup, etc, see Files on the internal storage).
- Unlocked bootloader on devices using hardware based key attestation (see Unlocked bootloader).
- A tripped Samsung Knox counter.
- Xposed (deactivate it or uninstall). It doesn't matter if it's systemless, Magisk can't hide it.
- EdXposed. Detection of EdXposed can sometimes be worked around with newer release of EdXposed and/or features like the EdXposed Manager blacklist.
- USB/ADB Debugging (disable under Developer options in Android settings).
- Developer options.
- Some Magisk modules - Depending on what the module does, it may not be able to be hidden by MagiskHide.
- Some modifications to /system. Make sure to use Magisk modules so that any modifcations you do are systemless...
Make sure that your device conforms to the above requirements before continuing.