Skip to content

Play Integrity & Magisk Module Setup

Play Integrity is Google's device attestation system. It replaced SafetyNet and is used by apps to verify that a device has not been tampered with. On a rooted device, Play Integrity checks fail by default, which can cause certain apps to restrict functionality or refuse to run.

This guide walks through setting up the Play Integrity Fix module in Magisk so your rooted device passes Play Integrity checks. This is relevant if you use GPS JoyStick on a rooted device. Play Integrity checks can cause other apps (banking, payments) to stop working when they detect root access.

For a full overview of modern rooting methods (Magisk, KernelSU, APatch), see the Rooting Android in 2026 blog post.

Before starting, you need:

  • A device rooted with Magisk (other root methods such as SuperSU or Kingroot will not work with this guide). If your device is rooted with something other than Magisk, see Troubleshooting: Failing Basic Integrity below
  • The Magisk app installed and showing your device as rooted on the home screen
  • Play Integrity Fix module. Download the latest release from the official GitHub repository
  • Play Integrity API Checker. Install from Google Play to verify your setup

Zygisk is Magisk's code injection framework. Play Integrity Fix requires it.

  1. Open the Magisk app
  2. Tap Settings (gear icon)
  3. Find Zygisk and enable it
  4. Magisk will prompt you to reboot; reboot your device

After reboot, open Magisk and verify Zygisk shows as active on the home screen.

  1. Open the Magisk app
  2. Tap the Modules section (puzzle piece icon)
  3. Tap Install from storage
  4. Grant file access if prompted
  5. Navigate to the downloaded Play Integrity Fix ZIP file and select it
  6. Wait for the installation to complete
  7. If the installation fails, see DenyList Fallback below
  8. Tap Reboot

The reboot may take longer than usual (up to several minutes) while the module initializes.

  1. Open the Play Integrity API Checker app
  2. Tap Check
  3. Look for the MEETS_DEVICE_INTEGRITY result
ResultMeaning
MEETS_DEVICE_INTEGRITY (green)Your device passes basic integrity. This is the minimum needed for most apps to function normally on a rooted device
MEETS_BASIC_INTEGRITYA lower level of attestation. Some apps accept this, others require full device integrity
MEETS_STRONG_INTEGRITYThe highest level. This is what unrooted, locked-bootloader devices report by default. Achieving this on a rooted device requires additional modules (Tricky Store + a valid keybox) and is not covered in this guide

For most users, MEETS_DEVICE_INTEGRITY is the target. If your check shows green for that result, your setup is working correctly.

DenyList Fallback

If the Play Integrity Fix module fails to install (some devices and custom ROMs are not compatible), the DenyList approach is an alternative.

  1. If you installed the Play Integrity Fix module, uninstall it from Magisk Modules and restart your device
  2. Open the Magisk app
  3. Go to Settings
  4. Enable Zygisk (if not already enabled)
  5. Enable Enforce DenyList
  6. Tap Configure DenyList
  7. Tap the three-dot menu and select Show system apps
  8. Search for Google Play Services
  9. Expand it and check both:
    • com.google.android.gms
    • com.google.android.gms.unstable
  10. Press back twice and restart your device
  11. After reboot, run the Play Integrity API Checker to verify

The DenyList approach passes Basic Integrity but does not pass the CTS profile match. This is sufficient for most apps but may not satisfy apps that require full device integrity.

If your device fails Basic Integrity even after following the steps above, one of these is likely the cause:

1. Google Updated Integrity Requirements

Google periodically changes how integrity checks work. The standard Play Integrity Fix module may need updating.

Fix: Check the Play Integrity Fix releases page for the latest version. Uninstall the current module, reboot, install the new version, and reboot again.

2. Device Rooted with a Non-Magisk Tool

Play Integrity Fix is designed for Magisk. If your device was rooted with SuperSU, Kingroot, Chainfire, or any other tool, installing Magisk on top of the existing root does not fix the problem. Integrity checks will still fail.

Fix: Flash your device's stock firmware to completely remove the existing root, then root with Magisk from a clean state. See the Rooting Android in 2026 blog post for current Magisk installation instructions.

3. Custom ROM Pre-Rooted with SuperSU

Some custom ROMs ship with SuperSU baked in. Even if you install Magisk afterward, the SuperSU remnants cause integrity failures.

Fix: Flash a different custom ROM that does not include root, then install Magisk before the first reboot.

If you paid a service to root your device, they may have used SuperSU or another legacy tool.

Fix: Contact the service to re-root with Magisk, or flash stock firmware and root with Magisk yourself.

5. Pre-Rooted Device Purchased with SuperSU

Devices sold as "pre-rooted" often use SuperSU.

Fix: Flash stock firmware and root with Magisk. The Rooting Android in 2026 blog post covers the full process.

You can rename the Magisk app to make it less visible in your app list. Android 11+ restricts the ability of apps to query other installed packages, but this is not a guarantee of invisibility.

  1. Open Magisk and go to Settings
  2. Tap Hide the Magisk app
  3. If prompted, allow installation from unknown sources for the renamed app
  4. Clear the name field and type your preferred name
  5. Tap OK and follow the prompts
  6. If an update dialog appears, tap Install
  7. Restart your device

The renamed app functions identically to the original Magisk app.