Xposed module that raises the stock concurrent binding cap for third-party Quick Settings tiles on Android 13+.
Android limits third-party Quick Settings tiles to 3 concurrent bindings by default. When the QS panel opens, SystemUI recalculates allowances and unbinds tiles beyond the cap. On many ROMs, unbound services may be frozen, so tapping them can trigger an unfreeze/rebind delay.
Tiles still unbind ~30 seconds after the panel closes.
Hooks SystemUI to raise the binding cap so tiles stay bound while QS is open.
- Android 13+ (API 33+)
- LSPosed (API 101)
- Scope:
com.android.systemui - Root for tile scanning and
Restart SystemUI
Tested on Pixel and LineageOS (Android 16). Other OEM ROMs may vary.
- RAM: More tiles stay bound while QS is open, so memory use scales with tile count. Once the panel closes and services unbind (~30s), memory returns to stock levels.
- Battery: No periodic work, wakelocks, or network. Event logging is a synchronous binder call with no background cost.
- Stability: The hook blocks memory-pressure downscaling of the binding limit. Aggressive settings on low-RAM devices may increase jank or OOM kills.
If you encounter issues, please file an issue on GitHub.
-
Download the APK:
-
Install and enable the module in LSPosed.
-
Scope to
com.android.systemui. -
Restart SystemUI or reboot the device.
-
Open the app and adjust the concurrent binding limit slider.
git clone https://github.com/hxreborn/qs-boundless-tiles.git
cd qs-boundless-tiles
./gradlew assembleReleaseRequires JDK 21 and Android SDK. Configure local.properties:
sdk.dir=/path/to/android/sdkOptional release signing (signing.properties or RELEASE_* Gradle/env properties).
This project is licensed under the GNU General Public License v3.0 – see the LICENSE file for details.