Lets Debloat Xiaomi MIUI
MIUI was Xiaomi’s first-ever product even before they started selling any of their phones. Released in August 2010 was a great success most of the android enthusiast at that time admired it and had a huge fan base even before their phones were launched.
As time passed, MIUI evolved with various bells and whistles but MIUI fans are not really happy with the inclusion of monetization ideas Xiaomi is currently doing ads on various system apps on their budget devices.
Xiaomi’s budget line of devices has the best hardware specification for the price but ads and preinstalled bloatware decreases the overall software experience of the devices. With some effort and tinkering around, we can make the MIUI feel much better and get rid of all ads and unwanted notifications.
Make sure to uninstall all unwanted preinstalled apps that can be removed from the app settings before proceeding with the below steps.
Prerequisites
- Laptop or desktop running windows mac or inux
- USB cable
- ADB platform-tools matching your laptop/desktop OS
you can get the latest platform-tools zip according to your OS from here. - Some patience and time for some trial and errors
Procedure
Enable USB developer option
- Go to the about phone section in the settings app of your MIUI device.
- Continuously tap on the MIUI version until you see a message like
“You are now a developer !”
Enable USB debugging
- Open settings and go to additional settings
- Click on developer options
- Turn on USB debugging (It will show a warning message, just allow it )
Establish the ADB Connection
- Unzip the platform-tools zip file downloaded from the android developer site
2. Open the platform-tools folder
3. Open command prompt (terminal for mac and Linux) there
(windows users, type in “cmd” over the address bar )
4. Plug in the phone to your laptop/desktop using the USB cable
5. Type the following in the command prompt window
adb devices
for mac and Linux type following to the terminal
./adb devices
6. Check the device it will prompt for an authorization, tick “on always allow from this computer” and click ok.
7. If everything worked correctly, you will be able to see something similar as output with some random number and device under the list of devices attached in command prompt or terminal.
List the packages
The following command will list all the packages which are currently installed on our device will be a huge list. What we will do is select the unwanted packages and uninstall that for the current user, since these are system apps we can’t entirely remove it so if we ever factory reset uninstalled apps will reappear, and have to do this process again to get rid of it.
after running the first command adb shell the prompt will change and show your device’s code name at the prompt refer to the picture below
adb shellpm list packages
mac or Linux users use
./adb shellpm list packages
The difference between commands for Mac or Linux and windows ends here and the following commands will work for all platforms as its executed on the android device itself.
Uninstalling the unwanted
Let’s first see the general way to uninstall an app in the following command put the apps’ package name instead of <package_name>
pm uninstall -k --user 0 <package_name>
if the command runs successfully and deletes that app success will be returned refer to the picture below
if somehow if a package is not getting uninstalled you can try to disable the package using the following command
pm disable-user --user 0 <package_name>
If the command runs successfully you will get the following message
example for deleting a package
pm uninstall -k — user 0 com.miui.yellowpage
repeat it with changing the package names
Following are the list of packages you can safely uninstall from MIUI for an ad-free experience, app name (given after #) of most of the packages are given so if you need that app you can skip that some packages don’t have app names but are used by some apps don’t worry these all packages are safe to uninstall.
These are the list of must to remove apps which will keep tacking data and sent out spam notifications
com.facebook.appmanager #facebook junk
com.facebook.services #facebook junk
com.facebook.system #facebook junk
com.miui.cleanmaster #cleaner
com.miui.msa.global #msa
com.android.browser #miui browser
com.xiaomi.mipicks #get apps
com.xiaomi.glgm #games
com.mipay.wallet.id #mi pay
com.mipay.wallet.in #mi pay
com.xiaomi.payment #mi pay
com.miui.bugreport #feedback
com.miui.videoplayer #mi video
com.miui.player #music player
com.miui.analytics #analytics spy
These are the optional apps which you can uninstall safely
com.xiaomi.midrop #midrop
com.android.calendar #miui calendar
com.miui.compass #compass
com.miui.notes #notes
com.miui.yellowpage #yellow pages
com.xiaomi.scanner #scanner
com.mi.android.globalFileexplorer #file manager
com.android.email #email
com.miui.fm #fm radio
com.xiaomi.mirecycle #mi recycle
com.miui.virtualsim #mi roaming
com.android.soundrecorder #recorder
com.miui.screenrecorder #screen record
com.miui.miwallpaper #wallpaper
com.miui.weather2 #weather
com.miui.providers.weather #weather
com.miui.antispam #anti spam
com.xiaomi.simactivate.service #sim services
com.miui.android.fashiongallery #mi glance
com.miui.cloudbackup #cloud backup
com.miui.cloudservice #cloud backup
com.miui.cloudservice.sysbase #cloud backup
com.miui.micloudsync #cloud backup
com.milink.service #mi link
some packages may not be available on some devices don’t worry if you got a ‘package not found’ error.
MIUI gallery app can also be uninstalled if you need which also have one companion which can also be uninstalled along with it. if in the future you need gallery back just make sure to install back cloud SDK too
The recorder app also needs this cloud SDK if you want any of these apps don’t uninstall cloud SDK else it’s safe to uninstall.
com.miui.gallery #gallery
com.xiaomi.micloud.sdk #cloud sdk
Reinstalling or enabling uninstalled or disabled apps
Whatever system apps you uninstall or disable can be easily reinstalled or enabled since packages are not entirely removed from the phone.
the following command will reinstall an uninstalled system app.
pm install-existing <package_name>
The following command can be used to enable a disabled system app
$ pm enable-user --user 0 <package_name>
replace <package_name> with the app’s package name
Revoking authorization and security app
MIUI apps collect a lot of data especially by the security app it’s highly suggested that never use the app and allow the authorization to collect the data actually for the user there is no need to ever open up the security application but the sad part is we cant disable or uninstall this app so the best thing we can do is to never open and agree on the authorization so that it won’t collect any data and sent it to Xiaomi. Always click on disagree for authorization when you open the security app.
Also go to settings and search for “authorisation” and click on Authorisation & revocation and turn off authorization for all apps except the updater and battery and performance so that these apps won’t collect any data.
(will show warning and have to wait 10 sec for the revoke button to enable)
if you revoke authorization for updater you may not receive software updates and for battery and performance if revoked will create a problem as battery usage stats will not update properly. if you don’t need battery usage stats in settings can revoke the permission for battery and performance too.
Disabling ads on security app and other system apps
The security app is the one of which we can’t remove from our device but it will keep pushing ads but luckily we can disable it easily by going to the settings of the security app and scroll down to see an option of
“receive recommendations” turn off that and it will stop pushing ads.
You can find the same settings in most of the MIUI system app’s settings page like the themes app gallery etc. go to each system app’s settings page and turn off receive recommendation to get rid of ads from that apps.
Some tips and suggestions
Most often it is better to use an alternative app instead of the MIUI system app for an overall better experience.
- Change the default launcher to something better.
suggested launcher app shade launcher - Change the default Xiaomi keyboard to something better like gboard (preinstalled)or swift keys.
- Hide the security app and all unwanted apps from the launcher never open these apps.
- If any of the apps keep pushing spam notifications go to settings for that app and turn off the notifications for that app.
- Switch to better alternative Google apps or better third party apps instead of stock MIUI apps like calendar, calculator, music, etc.
- Always check for each app’s permissions and never allow unwanted permissions for apps.
By uninstalling and disabling all unwanted MIUI apps, turning off authorization and turning off a recommendation from each app, and switching to alternative apps you will have an overall better experience.
MIUI is not a bad android skin but the ads and excessive data collection make it worse by disabling these we can have a better experience with the feature-packed MIUI.
Warning
Never uninstall or disable any package which is part of the MIUI security component. Package names containing security should not be uninstalled or disabled if done phone will boot loop when you restart.
if you are not sure of any package search for it and make sure it’s safe to be uninstalled. All packages mentioned above are safe to be disabled or uninstalled just to make sure everything is correct just restart the device after debloating. Even though all packages mentioned here are safe to be uninstalled/disabled if anything goes wrong I am not responsible for any data loss or soft bricking any device perform at your own risk.
Don’t worry even if anything goes wrong you can easily factory reset the device and everything will be back to normal. also after major updates, some of the apps may reinstall themselves so have to debloat again after major updates.
if you prefer a GUI based removal tool, can try out this here