Overlay Modules Permission Controller is an Android system component that often raises questions among users who find it in the list of applications or system logs. Despite its technical name, it plays a key role in managing permissions for overlay modules (overlays) that are used by many applications - from banking clients to game launchers. In this article, we will look in detail at what is hidden behind the package com.google.android.permissioncontroller, how it relates to device security, and why disabling it can lead to unexpected consequences.
If you have ever seen a pop-up window asking for permission to โdisplay on top of other windowsโ (Display over other apps), then we dealt with this particular component. It controls which apps can create overlays on the screen, from notifications and chat bubbles to system dialogs. But its functions go beyond simple window management: Without Permission Controller working correctly, many applications, including Google Pay and accessibility services, will stop functioning.
In this article, we will not only explain the technical aspects, but also show you how to check the status of a component on your device, what permissions it controls, and what to do if it starts consuming too many resources. We will pay special attention to common myths - for example, that this module supposedly โspysโ on users or can be safely removed.
What is Overlay Modules Permission Controller?
Overlay Modules Permission Controller is a system application from Google, included in Android Runtime (ART) and responsible for managing permissions for overlay modules. In simple terms, it controls which applications can display their elements on top of other windows. For example:
- ๐ฑ Chat bubbles in messengers (Facebook Messenger, WhatsApp)
- ๐ณ Pop-up windows banking applications for confirming payments
- ๐ฎ Game overlays (for example, in Xbox Game Pass or Steam Link)
- โ๏ธ System dialogs (low battery notifications, permission requests)
Technically, this component is part com.google.android.permissioncontroller of a package that is also responsible for processing permission requests in general (for example, access to a camera or geolocation). However, Overlay Modules are separated into a separate subsystem due to their special role in security:
- ๐ Prevention phishing through fake ones. overlays (for example, fraudulent password entry windows)
- ๐ก๏ธ Control of applications that can intercept clicks on top of other windows
- ๐ Limitation performance - too many overlays can slow down the system
On devices with Android 10 and newer, this module is integrated into Android AppRuntime and cannot be removed without root access. On older versions. (for example, Android 8-9) it was sometimes separated into a separate application, which caused confusion among users.
How does the overlay permission mechanism work?
When an application requests permission to display on top of other windows, the following process occurs:
- Request: Application (for example, Viber) sends a permission request
SYSTEM_ALERT_WINDOW. - Verification: Overlay Modules Permission Controller analyzes:
- ๐ Application signature (whether it matches Google certificates)
- ๐ API level (on new Androids, some overlays are blocked by default)
- ๐ Device policies (for example, on work phones, overlays may be prohibited)
/data/system/overlay_permissions.xml (available only with root access).It is important to understand that not all overlays require explicit permission. For example:
- โ System dialogs (notifications, menus) - allowed by default.
- โ Third-party applications (messengers, games) - require confirmation.
- โ ๏ธ Applications with rights Device Admin (for example, Find My Device) can bypass some restrictions.
On devices with Android 12+ Google has tightened the rules: now applications must explain why they need an overlay, otherwise the system can automatically block the request. This was done to combat fraudulent applications that used overlays to steal data.
If an application requests permission for an overlay for no obvious reason (for example, a simple calculator), this is a reason to check its reputation at VirusTotal or at Google Play
Where to find Overlay Modules Permission Controller at device?
This component does not have a separate icon in the application menu, but it can be detected in several ways:
- Through permission settings:
- Open
Settings โ Applications โ Special access โ Display on top of others windows. - In the list you will see all applications that are allowed to create overlays.
- The system controller is not displayed here, but it controls this list.
- Open
- Via ADB (for advanced users):
adb shell dumpsys package com.google.android.permissioncontrollerThis command will show component status and associated permissions.
- Through the task manager (if the component consumes resources):
- Open
Settings โ Battery โ Battery usage. - Find process
Permission Controller(may be hidden in the "System" section).
- Open
On some firmware (for example, MIUI or ColorOS) the path to the overlay settings may be different. If you do not find the "Display on top of other windows" section, try:
- ๐ Enter a query in the search settings
overlayoroverlay. - ๐ง Use applications like App Inspector (requires ADB).
What the system window looks like overlay request?
It has a gray background with the Android logo at the top, the text "Allow [application name] to be displayed on top of other windows?" and two buttons: "Allow" and "Deny". On new Androids, an explanation has been added for why the application needs an overlay.
If you suspect that the component is not working correctly (for example, constantly asks for permissions or slows down the system), you can reset its cache:
- Go to
Settings โ Applications โ Show all applications (โฎ) โ Show system ones. - Find
Permission Controller(orcom.google.android.permissioncontroller). - Click
Storage โ Clear cache.
โ ๏ธ Attention: Do not clear the data (Clear Data) of this application! This may reset all permissions on the device and cause system errors services.
Is it possible to disable or remove Overlay Modules Permission Controller?
Short answer: no, and here's why:
- ๐ This system componentis critical for Android security. Disabling it will lead to:
- ๐ซ Inability to install or update applications from Google Play.
- ๐ซ Errors in the operation of banking applications, instant messengers and services. Google.
- ๐ซ Loss of functionality Android Accessibility Suite (for people with disabilities).
- ๐ ๏ธ Even with root access removal of this component requires deep modification of the firmware and often leads to bootloop (boot loop).
- ๐ต On devices with Android 11+ an attempt to disconnect via ADB blocked by politicians Google Play Protect.
However less, there legitimate ways to limit its influence:
| Action | Result | Risks |
|---|---|---|
| Clearing the cache | Can eliminate lags | Minimal (some permissions can be reset) |
| Limiting the background through Digital Wellbeing | Will reduce battery consumption | Notifications may stop working |
| Disable overlays for unnecessary ones applications | Reduces the load on the system | Some application functions will become unavailable |
| Use ADB to disable unnecessary system components | Can free up resources | High risk of unstable operation |
If you still want to experiment, here is the command to disable it via ADB (but remember the risks!):
adb shell pm disable-user --user 0 com.google.android.permissioncontroller
โ ๏ธ Attention: On some devices (for example, Samsung s One UI) this command may reset all application permissions. They can only be restored through a complete reset.
Problems with Overlay Modules Permission Controller and their solutions
Despite its importance, this component sometimes causes failures. Here are the most common problems and ways to fix them:
1. Constant requests for permissions
Symptom: Applications constantly ask for permission to overlay, even if it has already been granted.
Cause: A failure in the permission database or a conflict with another system component (for example, Android System Intelligence).
Solution:
Clear cache Permission Controller|
Restart the device|
Check for system updates|
Disable unnecessary overlays manually-->
If the problem persists, try reset permission settings via ADB:
adb shell pm reset-permissions
2. High battery consumption
Symptom: In battery statistics Permission Controller occupies top positions.
Cause: Most often this is due to a large number of applications actively using overlays (for example, several instant messengers with chat bubbles).
Solution:
- ๐ Disable overlays for unnecessary applications in
Settings โ Special access. - ๐ Enable Adaptive battery in the power settings.
- ๐ซ Remove or freeze applications that abuse overlays (for example, some manga readers or streaming services).
3. Error "Permission Controller has stopped"
Symptom: A message appears about the component stopping, applications stop working.
Cause: Damage to system files, conflict after update or unsuccessful firmware modification.
Solution:
- Restart the device.
- Clear cache and data
Google Play Services. - If the error persists, perform a factory reset.
โ ๏ธ Attention: If the error appeared after rooting or installing custom firmware, the only reliable way to fix it is to reflash the device to the official version of Android.
Overlay Modules and security: how do scammers use overlays?
Overlays are not only a convenient tool, but also a potential vulnerability. Fraudsters often exploit permission SYSTEM_ALERT_WINDOW for:
- ๐ญ Phishing: Creating fake password entry windows (for example, on top of a real banking application window).
- ๐๏ธ Clickers: Automatically clicking on advertisements or buttons in games.
- ๐ฑ Spying: Intercepting keyboard input through transparent overlays.
Google fights this in several ways:
| Protection measure | How it works | Starting with Android |
|---|---|---|
| Restriction on overlays for new applications | Applications without history in the Play Market are blocked from accessing SYSTEM_ALERT_WINDOW |
10 |
| Requiring an explanation for requesting an overlay | The application must indicate the reason why it needs the overlay | 12 |
| Blocking overlays on password entry screens | On the lock and PIN entry screens, overlays are disabled automatically | 9 |
| Scanning for overlay abuse | Google Play Protect checks apps for suspicious use of overlays | 8+ (boosted to 11) |
To protect yourself:
Never give overlay permission to unknown apps|
Check reviews and app reputation before installation|
Use Google Play Protect to scan|
Disable overlays for applications that do not use them (for example, for a flashlight)-->
If you suspect that a fraudulent application is installed on your device overlay:
- Go to
Settings โ Applications โ Display on top of other windows. - Find the suspicious application and disable permission for it.
- Uninstall the application via Safe Mode (press the power button โ
Safe Mode).
Overlay Modules Permission Controller on custom firmware
On devices with custom ROM (for example, LineageOS, Pixel Experience) the operation of this component may differ:
- โ
Pros:
- ๐ง More control over permissions (you can disable unnecessary overlays globally).
- ๐ ๏ธ Ability to replace the standard Permission Controller with an alternative (for example, XPrivacyLua).
- โ Cons:
- ๐จ Risk of breaking compatibility with Google Mobile Services (GMS).
- ๐ Frequent bugs with permission requests after updates.
On firmware without GMS (for example, /e/OS) com.google.android.permissioncontroller replaced with an analogue from the ROM developers. In this case:
- ๐ Overlays are controlled through the firmware settings (usually in the
PrivacyorApp Permissions). - ๐ Some applications (for example, Google Pay) may not work. due to the lack of an original controller.
If you are using custom firmware and encounter problems:
- Check whether your firmware supports Signature Spoofing (needed for work microG).
- Install Magisk module
Universal SafetyNet Fixif there are problems with SafetyNet. - Use AppOps (hidden Android function) to fine-tune permissions:
adb shell am start -n com.android.settings/.Settings\$AppOpsSummaryActivity
โ ๏ธ Attention: On some custom firmware, disable Permission Controller may make it impossible to pass SafetyNetwhich will block the operation of banking applications and Google Pay.
On custom firmware, never delete com.google.android.permissioncontroller without replacing it with a compatible analogue. This will lead to loss of functionality of the majority. applications.
FAQ: Frequently asked questions about Overlay Modules Permission Controller
๐ Why does this application consume so much RAM?
Permission Controller runs in the background and manages permissions for all applications If you notice high RAM consumption, most likely there are many applications installed on your device that actively use overlays. (messengers, games, banking clients). Clearing the cache or disabling unnecessary overlays will help reduce the load.
On Android 12+ Google has optimized this component, and it should consume no more than 50-80 MB of RAM in normal mode. If the consumption is higher, check the device for viruses.
๐ก๏ธ Is it possible to block overlays for all applications except system ones?
Yes, but only with the help of ADB or specialized applications like AppOpsFor example, the command:
adb shell cmd appops set <package_name> SYSTEM_ALERT_WINDOW deny
will block overlays for a specific one. applications. To disable the application globally, you will need root access and file modification. /system/etc/permissions/platform.xml.
โ ๏ธ Be careful: blocking overlays for system applications (for example, Android System) may cause the device to not work.
๐ฑ Why did some overlays stop working after updating Android?
Google tightens its security policies with each new version of Android. For example:
- IN Android 10 Restrictions on overlays have been introduced for new applications.
- In Android 12 a requirement to explain the reason for the request has been added. overlay.
- B Android 13 overlays are blocked on screens with sensitive data (for example, entering a password).
If after updating the overlay stops working, check:
- Is the application itself updated to the latest version.
- Have the permission settings changed in
Settings โ Special access. - Are there any new restrictions in policies Google Play Protect.
๐ง How to completely disable all overlays on the device?
Complete disabling of overlays is only possible with root access. Without them, you can:
- Disable overlays for each application manually through the settings.
- Use ADB for mass disabling (see answer above).
- Install firmware without GMS (for example, /e/OS), where overlays are managed differently.
On devices with Magisk you can use the module DisableFlagSecure, but this will disrupt the operation of many system functions.
๐ How to check which applications are using overlays right now?
There are several ways:
- Via ADB:
adb shell dumpsys window | grep "mCurrentFocus"Shows the currently active window (including overlays).
- Via App Inspector (requires ADB):
- Install App Inspector from F-Droid.
- Connect via ADB and select option
Window Manager.
adb logcat | grep "SYSTEM_ALERT_WINDOW"
Shows events related to overlays.
Some firmwares (for example, MIUI) have a built-in utility Security โ Permission monitor, which shows active overlays.