- A user found that v0.115.2 of Pokémon Go stated that he was using an unauthorized device despite not being rooted.
- Further testing by multiple users found that the game uses the storage permission to snoop through the device to find evidence of root.
- Simply having empty files with the same name as rooting tools was enough to block Pokémon Go from running.
When Pokémon Go was first released, players found multiple ways to cheat within the game. Some of the cheating methods required root access to the device. In turn, Niantic, the company that developed Pokémon Go, started blocking any device with root privileges. But with v0.115.2 of the game, it looks like Pokémon Go is scanning the device’s storage for any files that might be involved in the rooting process (via Android Police) and locking players out.
This change in behavior was first noted by a user over at XDA who had been blocked from playing on a non-rooted smartphone after updating Pokémon Go. As they detail in their post, the phone had once been rooted a long time ago, but it had since been flashed back to a clean image. To make sure there was no residue of root left in the data and cache partitions, they reflashed the phone again, but that didn’t fix the problem.
After some experimenting, the user found that the game worked again after deleting all evidence of root from the device’s internal storage and microSD card (i.e., “flashable-looking zips, APKs of root-related apps, logfiles, Titanium Backup, any folder with “root”, “magisk” or “xposed” in its name”).
In response to this claim, numerous users on Reddit began to see if they could replicate the unauthorized device problem. Not only were old files from previously rooted devices blocking Pokémon Go from running, just having empty files that shared the name of a rooting tools such as magisk ended up triggering the lockout.
It doesn’t end there. Based on what other Redditors found, it looks like revoking the storage permission doesn’t fix the problem. While it isn’t entirely clear how Niantic is getting around the permission, it does appear that the app attempts to access various files and decides if the root file is there or not based on the error message.
Either way, this behavior on Niantic’s part might be crossing a line. While blocking rooted devices from playing Pokémon Go to prevent cheating was pretty reasonable, scanning the user’s internal and external storage pretty unacceptable.
As recommended by Android Police, using apps like Island can sandbox and isolate any root-related files from the phone’s internal storage. Doing this should stop Pokémon Go from seeing them and allow the game to be played.