Android phones come with lots of pre-installed apps that may not be of any use. Since we can’t freeze or uninstall system apps on Android normally, we either need root privilege or take advantage of
ADB shell pm uninstall command. If you have a rooted Android phone, you can use a system app remover to delete bloatware.
In case you find the ADB way to uninstall system apps without a bit complicated, you must try Universal Android Debloater GUI or ADBAppControl tool. These tools don’t require root privilege and let you get rid of unwanted apps safely through a graphical user interface.
I recently prepared a list of Samsung system apps and described the easiest way to uninstall preinstalled apps. In this tutorial, we’ll discuss how we can disable or freeze background apps and delete system apps on unrooted Android devices. Besides, we’ll also see how to re-install uninstalled apps using ADB commands. In case your phone has root access, I’ll also lay out the steps to debloat Android devices using the Debloater Magisk module.
The tips given in this tutorial can help you get rid of bloatware on all Android devices including Samsung, OnePlus, Google Pixel, Xiaomi, Redmi, Huawei, Honor, Nokia, Oppo, Realme, Vivo, Motorola, Lenovo, etc. running Android 5.0 or above.
Get Android Bloatware List via ADB
We all recognize apps by their names shown on the device app drawer. However, to be able to uninstall system apps, you must know the package name of the apps you want to remove. There are 3 ways to find the package name of an Android app.
- Visit a Google Play Store app’s page in a desktop browser. The package name is located right after ‘id=‘ in the URL. An app package name looks like ‘com.google.android.gm‘. You may not find the package names of the system apps though.
- Try apps like Package Browser, App Inspector, Package Name Viewer, etc.
- You can also get the full list of packages installed on your Android phone or tablet using
adb shell pm list packagescommand.
Anyway, let’s check out how we can have the complete list of system apps present on any Android device. Please note that to execute ADB commands you need to set up ADB and Fastboot on your Windows, Mac, or Linux computer and install the appropriate Android USB driver.
Don’t Miss: Use ADB Commands on Android Phone without Root
- Download the latest Android SDK Platform-tools and extract the zip.
- Open your device Settings and turn on USB debugging from Developer options.
- Go to Display under the phone Settings and increase the Screen Timeout duration.
- Now connect your Android device to the computer via USB.
- Navigate to the “platform-tools” folder and launch a Command Prompt or PowerShell window. You can get this option in the Windows Context menu by pressing the Shift key + Right-click button on the mouse.
- Alternatively, you can quickly open a command window from within a folder window by typing “cmd” in the File Explorer’s address bar and pressing the Enter key.
- When you have opened the Command Prompt, issue the following command to check if a proper connection between your computer and ADB daemon has been established.
- Meanwhile, keep an eye on the display of your phone, make sure it’s is not locked, and authorize ADB access on your device when prompted.
- If the connection is made successfully, you’ll see the device ID in the command window as highlighted below.
- You are now all set to print the list of all bloatware on your Android phone or tablet. Type
adb shelland hit the Enter key.
- Depending on what type of app packages you want to list, use the following commands. Using the 3rd command, you list apps from a certain vendor like ‘samsung’, ‘google’, ‘xiaomi’, ‘huawei’, ‘android’, ‘amazon’, ‘oppo’ ‘coloros’, ‘evenwell’, ‘facebook’ etc.
#1 List all installed apps
pm list packages
#2 List only system apps
pm list packages -s
#3 List apps by group
pm list packages | grep 'samsung'
- Below is how I generated the list of all system apps on my Samsung Galaxy S20 Ultra. The portion highlighted with yellow contains the app package names.
- Highlight the contents of the command window and press Ctrl + C to copy it. Save this list of system apps to a text file for future use.
Due to the difference between the names of apps and their packages, it might be very difficult to recognize an app by its package. Moreover, it’s also difficult to decide which apps are safe to remove. You can google to find the list of safe to uninstall bloatware for your Android device. Another way to get the real name of an app by its package is to paste the package name into the Google search box. That way, you can shortlist the system apps you can delete without encountering any problems.
I have prepared the list of bloatware present on devices from different Android OEMs.
- Samsung bloatware list
- Oppo bloatware list
- Xiaomi bloatware list
- OnePlus bloatware list
- Realme bloatware list
- Nokia bloatware list
- Vivo pre-installed apps list
- Huawei and Honor bloatware list
Don’t Miss: How to Change Android Device Name using ADB Command
Uninstall System Apps without Root
Once you have the list of Android bloatware ready, you can easily remove them using ADB uninstall system app command.
- Launch the Command Prompt as described above. The easiest way to open a command window is to type “cmd” in the File Explorer’s address bar and press the Enter key. You can also launch a command window by clicking on File> Open Windows PowerShell option in the folder window.
- Connect your Android device to the computer with USB debugging enabled and unlocked screen and execute the following command.
- Doing so will return your phone’s code name followed by a dollar ($) sign in the Command Prompt. You just need to issue one of these 2 commands to uninstall a system app on your Android.
#1 To uninstall an app with its data
pm uninstall --user 0 <package name>
#2 To uninstall an app but keep its data
pm uninstall -k --user 0 <package name>
- Now, type the command you prefer and hit the Enter key. With the removal of each system app, you’ll get a “Success” message.
- You can thus uninstall as many system apps as you want.
Reinstall Uninstalled Android Apps via ADB
pm uninstall command removes a system app only for ‘user 0‘, that is the current user. It means that the deleted app still remains available for other users of the Android device. It’s a good thing because you can easily restore an app if you uninstall it by mistake or need it later.
cmd package install-existing <package name>
Don’t forget to execute
adb shell before you use the above command as shown below.
Remove Bloatware on Android (Root)
In case you have a rooted device, you can remove system apps easily using apps like System App Remover and Bloatware Remover. Moreover, you can also delete bloatware on Android devices rooted with Magisk with a module called Debloater.
- Install the latest Magisk Manager on your device and launch it.
- Tap the hamburger (≡) icon and tap on Downloads in the side menu.
- Now tap the search icon and type “busybox” and tap the download icon to install Busybox for Android NDK. When Busybox is installed return to Downloads.
- Now search for “debloater” and install the Deloater (Terminal Emulator) Magisk module.
- When Debloater is installed tap on the Reboot button.
- Since the Debloater Magisk module has no UI of its own, you’ll need to install a Terminal emulator app like Termux to run system app uninstallation command.
- Launch Termux and grant it root privilege by running the
sucommand as shown below. You’ll then be prompted to grant root access to the Debloater app.
- Now launch the Debloater module by using the following command.
- On the Debloater screen, you’ll have 5 choices.
- System Apps
- System Priv-Apps
- Vendor Apps
- Enter Custom System Apps dir
- Import Config (/cache/import-debloat.txt)
- Since our aim is to remove Android bloatware, we can choose option number 1, 2, and 3. To uninstall system apps, for instance, type ‘1‘ and tap the Enter key on the keyboard.
- Debloater will scan your Android device for all system apps and give you a full list.
- As you can see, Debloater gave me the list of 100 system apps on my OnePlus 8. Suppose you want to uninstall Screen Recorder (app number 79), type ‘79‘, and tap on the Enter key. Debloater also lets you delete multiple apps by entering multiple numbers.
Freeze Background Apps on Android
Android has always lagged behind iOS in the management of the app background processes. However, with Android 8.0 and higher, Google has done a lot to put a check on apps that keep running in the background draining the battery, data, and other resources. In case you want to freeze the background apps, you can do that without root using the following ADB command. This method to freeze apps should work on all devices running Android 7.0+.
- Launch the Command Prompt.
- Connect your device via a USB cable.
- Issue the following command.
- Then execute the following command. Don’t forget to replace <package name> in the command below with an app.
cmd appops set <package_name> RUN_IN_BACKGROUND ignore
- To enable the frozen app and allow it to run in the background again, you can use the following command.
cmd appops <package_name> RUN_IN_BACKGROUND allow
Disable System Apps on Android via ADB
ADB is really a great command-line tool and it can be used in several ways to perform tasks on Android that would otherwise have not been possible. Besides uninstalling bloatware and freezing system apps, ADB can also help you disable system apps easily. The following command lets you disable a system app on an Android device.
adb shell pm disable-user --user 0 com.sec.android.app.sbrowser
If you want to enable a disabled app later, you can use the following command.
adb shell pm enable --user 0 <package name>
Delete Failed Internal Error in ADB
Sometimes Android OEMs restrict the uninstallation of certain system apps using ADB commands. In such a case, you might get the following error.
Failure[Delete failed Internal Error]
To uninstall such apps, you’ll need to have root privilege. If you have a rooted device, you can execute the following command one after another as shown below.
adb shell su mount -o rw,remount /system rm -rf /system/app/AntHalService.apk rm -rf /data/data/com.dsi.ant.server mount -o ro,remount /system exit exit
Whether you want to disable, freeze, or uninstall system apps on Android, you can do everything using ADB shell commands mentioned above. System App Remover and Bloatware Remover may be the easiest tools for root users but if you haven’t rooted your device, using the ADB on your PC is the best way to remove bloatware on any Android device.
Read Next: How to Turn Safe Mode On or Off on Android
“pm disable-user –user 0 com.sec.android.app.sbrowser” worked fine. But…”pm enable-user –user 0 com.sec.android.app.sbrowser” does not. How to you re-enable a disabled app?
You can use ‘adb shell pm enable –user 0….’
I was about to root my phone which I didn’t want to do when I came across your article. It worked perfectly getting rid of system apps without rooting, thank you!
Wisdom engine app uninstall or freeze how
Does using Adb on a non rooted phone to uninstall apps or bloatware for the current user actually save storage space too? Or is it like freezing an app that just removes the short cut link so you don’t actually recover the storage space?
Yes, it does save space as it removes the app data completely.
these uninstall commands are not working in my phone show ‘failed [internal error]
What phone are you using? Also mention the apps you are trying to uninstall!
If you run Windows, the easiest way is ADB App Control, with GUI:
I recommend just Disabling, rather than Uninstalling since you can’t make use of the extra space in the System without root.