Even though Apple refers to iOS as “the most advanced” mobile OS, the reality couldn’t be far from it. Sure it’s quite advanced, but compared to Android, it’s always going to be the less advanced OS. The reason behind that is simply based on the philosophy of both the platforms which couldn’t be more different. Android, unlike the competition, offers much more freedom to third-party apps which results in some really innovative approaches. Something like Tasker would never be possible on iOS. Android apps can do more tasks while running in the background. While that gives Android an edge over iOS, it also results in more battery drain. Luckily, you can disable or freeze background apps on Android Nougat without root. Although it does require a bit of know how. The whole drill has been discovered and described in detail by dosangst on Reddit.
When you install a ton of apps knowing how they might affect your battery, running in the background because you like the features they offer in return, it’s a different story. But when you end up facing battery drain because of a poorly optimized app’s background processes, that’s when it becomes problematic. Google has been cracking down on the freedom provided to the apps in the background and with Android O, the restrictions are only going to be tighter. But it is quite unlikely that a majority of devices will ever see Android 8.0.
But if your device is currently running on Android Nougat, you don’t have to wait around for Android O. At least, not for the battery saving features. There’s a simple trick that will prevent an app from ever running in the background. While it does not require root or a third-party application, that route probably would have been much easier for many of you. But if you’re comfortable using ADB commands you’ll feel right at home. Using a couple of commands you can block apps like Facebook and Snapchat from draining your battery in the background. You should also note that this means you won’t be getting any notifications from the apps as well since they won’t be syncing for them in the background anymore. Other than that, the apps will continue to work as they’re supposed to.
- ADB and Fastboot must be installed on your PC.
- Make sure you also have the necessary USB drivers for your device installed.
- Your device should be running Android 7.0+ Nougat.
- USB debugging should be enabled.
- You’ll also need an app called App Inspector to find out the package names of the apps you’re going to block from running in the background.
Freeze background apps
- Assuming you have everything installed and set up, launch the ADB command interface. On a windows machine, go to the ADB installation folder (usually it is C:\adb or C:\Program Files (x86)\Minimal ADB and Fastboot), type cmd in the address bar and hit Enter.
- Now connect your phone to the PC with a USB cable and change the connection mode to MTP. If this is your first time running ADB, you will also see a prompt on your phone asking you to authorize a connection with the computer. Allow USB debugging access here as well.
- To see if the connection is properly established, you can type the command below. If you see a serial number as seen below, you’re good to go.
- If you instead see something like Waiting for device, it is best you check your USB connection and drivers.
- If everything is okay, you now need the package name of the app that you’ll be blocking. Just type in the ADB command given below replacing the text in green with the package name of the app and hit Enter.
cmd appops set <package_name> RUN_IN_BACKGROUND ignore
- The above command should do the trick and hey, it didn’t require root. If you ever want to revert the change you have just made, all you have to do is allow the app to run in the background. For that, just execute the command below and replace the green text with the app’s package name.
cmd appops set <package_name> RUN_IN_BACKGROUND allow
This method is more powerful than say, using Greenify or any other similar app since, without root, the functionality of such apps is greatly limited.