A recent pair of updates has stopped Pokémon Go from running on rooted Android smartphones.
This is a defensive move by Niantic in an effort to curb GPS spoofers and other cheaters. One way to cheat in Pokémon Go is to root your Android device, allowing you to use apps that trick the phone’s GPS location.
Rooting an Android phone gives users access to the base files and software on the device. One of the simplest ways to think about the process is that it’s very similar to jailbreaking an iPhone.
This doesn’t mean that every rooted Android phone is being used by Pokémon Go cheaters. Many people root their phone to get access to more expansive customization options, or to run software clones of stock Android.
What’s even more concerning is that even if the user has disabled the game’s local storage access, Pokémon Go still knows if the phone is rooted. Further, if empty file folders are named after root-related folders, the game will also fail to launch. Reddit users point out that files with names that include ‘magiskmanager,’ ‘root’ and ‘xposed,’ will all cause Pokémon Go not to run.
Another Reddit user also discovered how the game is skirting its lack of system file permissions. Pokémon Go is able to request files and if it doesn’t have system file permission, the phone replies with an error code. The error code is different depending on if the file is there or not.
Therefore if Niantic is able to learn what files are associated with rooting, the developer can then send requests for those files. Depending on the error messages it receives, the game is aware if the user’s phone has been rooted.
This is rough news for any players using a rooted device and that aren’t cheating. That said, there are ways to block the app from running any background processing. The unreleased version of ‘Island’ is a good start, but be wary since this isn’t a stable full version build.