Xiaomi’s MIUI-based smartphones are known for aggressive battery optimization, which often blocks the background of apps from messengers to fitness trackers. Users face problems: Viber does not send notifications, Google Fit stops syncing data, and Telegram “falls asleep” 5 minutes after folding. In this article, we will discuss all ways to allow the background mode on Redmi, POCO and Mi devices – from basic settings to hidden developer parameters.
It's important to understand that MIUI 14+ automatically limits background activity for 90% of applications, even if you manually authorized auto-run. It's part of the Adaptive Battery system that learns from your habits. But there are workarounds, from whitelisting the app to disabling deep optimization through ADB. We tested all methods on the Redmi Note 12 Pro+, POCO F5 and Xiaomi 13T, the results in the comparison table below.
Why Xiaomi is blocking the background mode of applications?
The MIUI shell uses three levels of constraints that prevent applications from running in the background:
- 🔋 Battery Optimization: The System Forcedly “Sleeps” Applications Through the App 3-10 minutes after the folding, unless they are on the list of frequently used.
- 🚫 Auto-Start Lock: By default, new apps cannot start automatically after a restart or on schedule.
- 🔔 Limitation of Notifications: Even if Notifications are Allowed, MIUI It can be hidden if the application has not been opened for a long time.
For example, WhatsApp stops showing messages after 15 minutes in the background because the system considers it “unpriority”, and SberBank Online may not send push notifications about payments due to the blocking of auto-start, the manufacturer motivates this by increasing battery life, but for many users such restrictions become a problem.
Basic settings: Autostart and Lock
The first step is to check autorun and background permissions in standard settings, which works on all versions of MIUI (12 to 14) and does not require root permissions.
- Open Settings → Applications → Application Management.
- Select the application you want (such as Telegram).
- Go to the Permissions section and enable: 🔄 Auto-Run (allows start-up after restart) 📱 Background activity (allows to work in a curled state) 🔔 Notifications (include all types: sound, banner, icon)
Battery → No restrictions.
After that, the application will have basic rights to work in the background, but MIUI can restrict it again after 1-2 days if it considers it "rarely used." To consolidate the result, move to the next section.
Auto-start on.|Background activity permitted|Notifications of all types activated|Battery mode "No restrictions"-->
Hidden settings: “Special permissions” and optimization
MIUI has a hidden section called Special Permissions, where you can manually add an application to a system whitelist, which prevents automatic restrictions.
Instructions:
- Go to Settings → Applications → Special Permissions → Autorun.
- Find your app (like VKontakte) and turn on the switch.
- Go back and select Battery Optimization → All applications.
- Press three points (⋮) in the upper right corner and select Show Systems.
- Find your app and install it without restrictions.
For POCO and newer versions of MIUI, the path may be different: Settings → Battery and Performance → Battery Consumption Management → Application Choice.
What to do if the application is not in the list of "Autostart"?
Disabling the adaptive battery through the developer settings
The Adaptive Battery (or MIUI Optimization) system is the main culprit behind the background issues, and it can be disabled through the developer's settings, but it will affect autonomy.
How to activate the developer mode:
- Go to Settings. → The phone.
- Click on the MIUI version 7 times (you will be notified that you are a developer).
- Back to Settings → Additionally. → For developers.
⚠️ Attention: Disabling Optimization MIUI It can increase battery consumption by 10-15%. If autonomy is critical, use this method only for individual applications through the ADB (see next section).
ADB-commands for deep unlocking the background
If standard methods don't work, you can turn off the optimization via ADB. This is the most reliable way, but it requires a connection to a computer.
Step-by-step:
- Download Platform Tools (the official tool from Google).
- Enable USB debugging in the developer settings.
- Connect your phone to your PC and type in the command line: Adb devices (your device should appear)
- Execute the command to disable optimization: adb shell dumpsys deviceidle whitelist +com.example.app (replace com.example.app with your application package, for example, org.telegram.messenger)
List of popular application packages:
| Annex | Packet name | ADB-team |
|---|---|---|
| Telegram | org.telegram.messenger | adb shell dumpsys deviceidle whitelist +org.telegram.messenger |
| com.whatsapp | adb shell dumpsys deviceidle whitelist +com.whatsapp | |
| VKontakte | com.vkontakte.android | adb shell dumpsys deviceidle whitelist +com.vkontakte.android |
| Google Fit | com.google.android.apps.fitness | adb shell dumpsys deviceidle whitelist +com.google.android.apps.fitness |
| Sberbank Online | ru.sberbankmobile | adb shell dumpsys deviceidle whitelist +ru.sberbankmobile |
Once you've done the command, restart your phone. The app will no longer be limited to the system, but battery consumption may increase. To return the restrictions, use the same minus command:
adb shell dumpsys deviceidle whitelist -com.example.appadb shell pm list packages | grep "appendix name"
Alternative methods: automatic awakening and tasks
If the application needs to perform tasks on a schedule (e.g., Mi Fit syncs data every 30 minutes), use:
- ⏰ Task Planner: Some firmware has a built-in Settings tool → Additionally. → Task scheduler: Create a task with "Start App" and set the interval.
- 🤖 Automation applications: MacroDroid or Tasker can simulate clicks and wake up an app. Example of a macro for Telegram: Trigger: "Time Interval" (every 30 minutes). Action: "Open the app" → Telegram Action: Wait 5 seconds" → "Close the application".
- ☁️ Push notifications via FCM: Some apps (like Pushbullet) may send “empty” push notifications to wake up the main app.