Modern Xiaomi smartphones running on the shells MIUI and HyperOS, often come with a pre-installed set of programs that many users consider redundant. Advertising modules, duplicate services and just unnecessary utilities take up precious space in memory and can slow down the device. Fortunately, there is a proven method to get rid of excess software without the need to obtain Root rights, which preserves the warranty on the device.
The cleanup procedure requires a computer connection and special commands, but it's absolutely safe if you follow the instructions, you can deactivate or completely remove even those programs that are hidden from the average user in the standard settings menu, which will return your gadget to speed and free up gigabytes of space.
Before you start taking action, you need to prepare the workplace and the mobile device itself. USB-cable, as any interruptions may lead to errors in the data transfer process between the PC and the smartphone.
Preparing a smartphone and computer for work
The first step is to activate the hidden developer mode on your Xiaomi device. Without this step, the computer will not be able to access the system control commands. Find the About Phone option in the settings and quickly press seven times in a row on the MIUI or HyperOS version until a notification of successful activation appears.
Then you go to the advanced system settings. The path may vary slightly depending on the firmware version, but it usually looks like this: Settings β Additional settings β For developers. In the menu that opens, you need to find and activate two critical parameters: USB debugging and USB debugging.
The second point is often hidden or requires additional confirmation. SMS It's a measure of Xiaomi's protection against unauthorized access, so you can't ignore it. SIM-map, make sure it is installed and active at the time of setting up.
β οΈ Warning: When you connect your phone to your computer, after you turn on debugging, a dialog box will appear on your smartphone screen asking for debugging permission. Be sure to tick "Always Allow" and press "OK" otherwise the computer will not see the device in command mode.
On the PC side, you'll need to install ADB drivers (Android Debug Bridge), a versatile tool that allows your PC to communicate with Android devices at a low level, and you can download the full SDK Platform Tools from the official developer site, or use the Minimal ADB and Fastboot installer, which automatically installs everything you need.
βοΈ Checklist of preparations
Installation and configuration ADB-toolkit
After downloading the archive with platform tools to the computer, it must be unpacked into the root folder of the disk or into any convenient directory, the path to which does not contain Cyrillic characters. This will eliminate possible errors when executing commands, since the Windows console may not properly process Russian letters in the paths.
To run the command line in the tool folder, open the explorer, go to the created folder, press the Shift key and right-click on the empty space. In the context menu, select "Open PowerShell window here" or "Open in the terminal." In the window that opens, enter the adb devices command to check the connection.
If you see a list of device code and device status, it's a good link. If it's unauthorized, check your phone screen and confirm access. Offline status indicates driver or cable problems. If you don't respond, try replacing it. USB-cable, as some are only for charging and do not transmit data.
There is also a graphical shell for ADB, such as the Xiaomi ADB/Fastboot Tools program from developer Szaki, which makes it much easier for beginners to automatically determine the model, show a list of packages and let you remove them with a mouse click, but manual control through the console gives you more control over the situation.
π‘
Use the original cable from the delivery kit or a quality analog with data support. Cheap "charging only" cables are the most common reason for not connecting to ADB.
Search for system application identifiers
To remove a particular application, you need to know its exact system name, because in the MIUI interface they may be called differently. For example, "Music" may have the batch name com.miui.player, and "Conductor" - com.android.fileexplorer.
You can get a full list of all installed packages by executing the command in the command line:
adb shell pm list packagesThe output will be very long, so it's better to filter it out. If you want to find packages related to an ad or a specific service, add a keyword. For example, the adb shell pm list packages | findstr miui command will show all packages containing the word "miui."
For more convenient analysis, you can redirect the list to a text file, opening which in the notebook, you will easily find the necessary lines:
adb shell pm list packages > apps.txtIt is important to distinguish between user and system applications. Removing critical system components can result in bootloop or inoperability of individual functions such as a camera or communication. Always check the destination of a packet on the Internet before removing it.
| Name on the menu | System package (example) | Can be removed | Risk |
|---|---|---|---|
| Mi video | com.miui.videoplayer | Yes. | Low. |
| Mi Music. | com.miui.player | Yes. | Low. |
| Mi Browser. | com.android.browser | Yes. | Low. |
| Google services | com.google.android.gms | No. | High-pitched |
| Systemic UI | com.android.systemui | No. | critical |
The process of removing and hiding applications
There are two basic approaches to cleaning: completely removing the packet or hiding it (freezing it) for the current user; the second option is safer because it allows you to return everything back without flashing it back.
adb shell pm uninstall -k --user 0 <name packet>Instead of <packet name> substitute a previously found name, such as com.miui.analytics.The -k flag saves the data and the app cache in case you decide to restore it later, although when deleting for user 0 this often doesn't matter, since the application disappears from the interface.
If you want to simply disable the app without physically removing it from the system partition, use the disable command:
adb shell pm disable-user --user 0 <name packet>This method is preferred for components that you are not sure about, and once you run the command, the application will no longer appear in the menu and consume resources, but will remain in memory, and you will need an enable command with similar parameters to restore functionality.
What to do if the team is not executed?
Recovery of remote system components
If the removal of any component led to unstable smartphone operation or loss of important functions, do not panic. Since we did not erase the Recovery partition or modify the system files at the root level, all changes are reversible.
To restore a remote packet, it is enough to execute the command:
adb shell cmd package install-existing <name packet>This instruction forces the system to re-register the application for the current user, but if you used the disable method, use:
adb shell pm enable --user 0 <name packet>If the smartphone stopped loading after your experiments, resetting to factory settings through the Recovery menu will help. To do this, turn off the phone and press the button combination Volume Up + Power before the Mi logo appears. From the restore menu, select Wipe Data.
β οΈ Note: Recovery will delete all personal data (photos, contacts, applications). Before experimenting with system packages, it is strongly recommended to make a full backup of important files.
Alternative methods and automation
Manual command entry can seem difficult for the untrained user, so there are automated scripts and programs. One popular solution is Universal Android Debloater, which has a graphical interface and a database of secure applications for removing for different models.
You can also use ADB scripts that run on a single file, which typically contain a list of commands to remove ads and standard Xiaomi software, but using pre-made scripts from unverified sources carries risks, since you canβt see which packets will be affected.
Another method is to use client applications installed directly on the phone, but they require special modes to be enabled via ADB (e.g., adb shell pm grant) to gain control rights to other applications, such as Package Disabler or NoFrills.
π‘
Using graphical shells speeds up the process, but manual control through the console gives you a 100% guarantee that you won't delete the extra. Always check the name of the package in front of the command.
It is important to understand that after resetting or updating the firmware, all applications deleted through ADB can return, since the system partition remains unchanged. The cleaning procedure will have to be repeated, but it will take much less time if you save the list of commands in a text file.