[APP][N][XPOSED] GravityBox v7.5.0 - tweak box for Android 7 [23/01/2019]

Search This thread


Inactive Recognized Contributor
Dec 15, 2012
Hi everyone...

I'm experiencing saving settings issues. I've tried both FBE, non-FBE and stock versions ranging from 7.0.0 to 7.5.0 for a few days now on different rom's. nougat/oreo.

The settings are saved in the app but they aren't used by the "engine" after a reboot. So whatever loads on reboot are the default settings. When opening the app the settings appear to be there but they need to be toggled off/on or on/off to be used again by the "engine". On rare occasions even the app settings disappear and it acts like it's opening up for the first time with the "Ok I got it" warning.

My other xposed modules work ok. The phone is an Honor Note 8 (huawei).

Any ideas what I can try? I really need the pie controls. Been a user for many years now. Thanks for reading and commenting.
What kind of Xposed framework are you using? This looks like either preference file permissions are proactively changed by the system during boot making them unreadable to Xposed module or there is some issue with the framework itself.
  • Like
Reactions: shaglord


Senior Member
Aug 18, 2013
What kind of Xposed framework are you using? This looks like either preference file permissions are proactively changed by the system during boot making them unreadable to Xposed module or there is some issue with the framework itself.

Hi C3C!

I previously ran the xposed supplied by this rom but now I tried flashing the official zip v89 and use the latest installer 3.1.5 (previously used were 3.1.4 + v89)

I noticed one new thing and it's that after correcting the settings it works after one reboot, but after rebooting the second time without opening either xposed/gravitybox apps, the engine loses its settings.

When the settings are lost, I checked if my other modules stopped working too but they work fine.:confused:

The rom I'm using is an EMUI stock rom tuned by KangVIP. I've tried other stock roms and they are the same.

On previous phones lg/xiaomi/etc the pie controls have always worked flawless. I've checked the other settings to see if there is some protection that messes with xposed. The rom came with xposed and is very popular.

Thanks /s
Last edited:


Senior Member
Aug 18, 2013
It's not too bad, what I do now is just really quick setup gravitybox settings on every reboot. It's not a big deal. I only reboot maybe once a week.

Thx for the help anyway..

Sir Broseph

Nov 9, 2018
Has anyone tried this on an LG K20 PLUS? I've installed it but it seems any setting that requires me to reboot causes a bootloop.


Senior Member
Sep 24, 2014
Baldwin Park
Has anyone tried this on an LG K20 PLUS? I've installed it but it seems any setting that requires me to reboot causes a bootloop.
You mention the device but what about the ROM? If you're on the LG stock then things just might not work out. See the first post regarding what this module targets and take note of why it might not work out.

LG G3 D851, AOSP-CAF 6.0.1, NanoDroid, MultiROM, XDA Legacy

Sir Broseph

Nov 9, 2018
Its pretty stock I have magisk and a few small mods. I've searched for my phone in this thread and nothing appeared so I searched for LG and there are plenty of people running GB on different LGs so I was hoping someone had some experience with it on my phone.


Jul 15, 2012
Hey guys, anyone know if it's possible to change the lockscreen clock color through gravitybox? Or if not, is it possible through other system settings or tweaks?
Thanks in advance :)


Senior Member
Oct 15, 2013
Thank you Davey.
Even with less capability it might be worth a try. Xposed has been causing me crashes and boot loops for the last couple of months which disappeared when I finally turned it off.
Best to identify/address root cause vs deploying workarounds. Official Xposed builds are not problematic provided you are using a relatively clean AOSP based ROM on a supported device. On complaint systems unstable Xposed behavior is symptomatic of a larger problem that will likely haunt you if left unchecked.

If troubleshooting is not your cup of tea you'll need to poke around the Play Store for apps providing the desired functionality. Be prepared for a disappointing search as most can't touch what Xposed+GB can accomplish.
  • Like
Reactions: maybeme2


Senior Member
Feb 20, 2008
I've had a weird issue recently with GravityBox.... I've got Xposed installed systemlessly via Magisk, and I've got GB 7.5.0 installed on a Moto G5s Plus (sanders) and it's been working pretty flawlessly for months.

I recently updated Magisk and Manager, and GB is causing launcher to not load and/or display not to show anything. The launcher not loading is a once in a while, the display not showing anything is the main issue.
Basically the device will boot up, screen works I can see the boot animation, ambient display does work, so I can see if I've got a notification. Once the phone boots up, I'll see the lockscreen for a few seconds and then the screen goes dark. The display backlight turns on, I can hear notifications, (I see texts on my computer using MightyText and other notifications) but nothing shows up on the screen.

The only fix has been (after much trial and error, and re-flashing my boot.img, thinking it was a borked Magisk install, among other things) I was able to narrow it down to GB module being installed. I uninstalled the GB module via recovery and when I reboot, everything works as normal. Any thoughts?
Last edited:


Senior Member
Mar 27, 2013
I've been using for ages an Xposed module called Xnotifications for interacting with notifications.
It uses notification
- title
- ticker
- content
as filter and
- visibility (show/hide)
- show icon in statusBar (y/n)
- show ticker (y/n)
- show title (y/n)
- show content (y/n)
- alert (do not change/mute/sound only/vibrate only/vibrate and sound only)
- notification tone (for choosing one)
- notification led (do not change/disabled/custom)
as actions.
Here's some examples:
- if I get a notification from the app A and this notification has Content that includes 'cold', than mute that notification (but not all notifications from app A with different Content)
- if I get a notification from the app B and this notification has Content = 'hot', than hide that notification (but not all notifications from app B with different Content)

The problem is that that module hasn't been updated since june 2017 and now it's starting giving some problems.
Would be any chance to add this in Gravity Box, given that it has the Ultimate notification control part?


Top Liked Posts

  • There are no posts matching your filters.
  • 252
    GravityBox - all-in-one tweak box - Xposed module for devices running AOSP Nougat
    Version 7.5.0 [Nougat]

    Version for JellyBean is available in this thread: https://forum.xda-developers.com/showthread.php?t=2316070
    Version for KitKat is available in this thread: https://forum.xda-developers.com/showthread.php?t=2554049
    Version for Lollipop is available in this thread: https://forum.xda-developers.com/showthread.php?t=3037566
    Version for Marshmallow is available in this thread: https://forum.xda-developers.com/showthread.php?t=3251148


    The app utilizes amazing Xposed framework coded by recognized developer rovo89 which, briefly, provides interface for injecting code into any app, including system services, allowing modifications of applications and system services at run-time. One of the biggest advantages of GravityBox is that it is not bound to any specific device. Actually, it should run on any device having vanilla Android 7 (ROM close enough to AOSP).
    This project wouldn't be possible without rovo's Xposed framework, so huge kudos to him.

    Feature highlight
    --- Lockscreen tweaks
    --- QuickSettings tile management with additional tiles
    --- Statusbar tweaks
    --- Navigation bar tweaks
    --- Pie controls
    --- Power tweaks
    --- Display tweaks
    --- Phone tweaks
    --- Media tweaks
    --- Hardware/navigation key actions
    --- GravityBox Actions - interface for 3rd party apps
    --- Notification control (per-app notification LED/sounds/vibrations)
    --- Fingerprint launcher
    --- Advanced tuning of Framework and System UI parameters
    ... and many more

    GB's main concept is to make most of the preference changes to be done on the fly without need to reboot a device to achieve custom-ROM like experience.
    This means it is not possible to "completely deactivate" particular feature if it causes trouble on your device or if you installed GB because you want to use only one particular feature you can't find elsewhere.
    This results in issues on ROMs/devices that have parts that are diverting from default Android implementation too much, or are running heavily modified custom ROMs.
    If you experience weird issues after installing GB, even if you didn't activate a particular feature, it is not because of GB is broken, it is because it is not compatible with your ROM.
    It is very similar to a situation when you installed ROM built from source for Nexus to some Xperia device - it won't work.

    GB is a complex module and is not suitable for 1 purpose scenario. This means, if you are running custom ROM built from source, and you are missing a certain feature, your best option is to go ask creators of those ROMs to implement those additional features. Supplementing missing features on well-known custom ROMs built from source by installing xposed modules (especially complex ones) is definitely not a good way to go and can cause more trouble than good.
    GB being a complex module, it shouldn't be combined with other complex modules often racing for the same goal. They can conflict/fight on the same playground and there's no way you can deterministically say which one's going to win. They can even lose both.

    So in summary:
    - this module is designed to run on vanilla or close-to-vanilla Android 7 (AOSP)
    - officially supports devices/systems it was developed and tested on
    - Samsung Touchwiz, HTC Sense, MIUI, LeWa, Xperia, Lenovo, etc. are NOT supported. It is not guaranteed this module will work on these at all so try at your own risk. This module is simply too complex to support all kind of ROM brands that were vastly modified by vendors.
    - I will not implement any exceptions that will adapt this module to a specific custom ROM. Please, do understand, it is unmanageable.
    - I will not provide any support for devices violating these compatibility rules

    GravityBox [N] has been designed for and tested on
    - Nexus 5 running AOSP 7.0
    - Nexus 5 running AOSP 7.1
    - Nexus 5X running stock 7.0
    - Nexus 5X running stock 7.1
    - OnePlus 3T running stock OxygenOS 4.5
    - Moto G5 Plus running stock 7.0

    Reporting bugs
    If you experience problems with certain feature, provide the full-detailed info that can help me
    to reproduce the bug and attach error.log file you'll find in:

    In case you experience SystemUI crashes or other apps Force Closing, or device soft reboots, attach logcat from time
    crash occurs. (use adb logcat *:E or your favorite logcat app from Play Store).
    Please, don't attach big logs. Only the portion where error is clearly seen.
    Disable all other xposed modules before reproducing bug to make sure it is really GravityBox related
    Remember, this app was developed and tested on one particular device so it is not guaranteed that
    it will work flawlessly on yours.

    Click here to read additional, more detailed info on Reporting bugs provided by @trjlive

    Multilanguage support
    Volunteers are welcome to translate GravityBox to other languages.
    Simply download this file: https://github.com/GravityBox/GravityBox/raw/nougat-as/res/values/strings.xml
    Use Notepad++ to edit strings and then send me edited file so I can include translations into next release.

    Source code
    GravityBox is opensource. Sources are available in my gihub: https://github.com/GravityBox/GravityBox/tree/nougat-as
    If you're a dev and have some ideas for additional features, feel free to fork it, work on it
    and send the pull requests.

    Copyright notice

    Support development
    Coding, maintaining and supporting this project costs me a lot of my precious time. If you find this project useful, you are more than welcome to support its development via donation. This form of support is meant to compensate for my time dedicated to the community + eventually, help me to afford newer device to keep up with AOSP evolution thus providing continuous support as Android evolves. Thanks!

    Info about premium features and PayPal transaction ID verification system
    1) Those who supported development via PayPal donation can use their PayPal transaction ID to unlock premium features.
    As of v2.9.5, there are two premium features:
    - Backup/restore of GB settings.
    - Ultimate notification control

    2) If you contributed to the project by providing translations, code fragments, or by any other way
    you can apply for a free transaction ID by contacting me via PM.

    3) Be aware that there's a system that can identify potential transaction ID
    abuse. E.g. when one ID is being used by more users. Such IDs will get blocked automatically.
    This can also happen when you previously exposed your ID in public forum and other users took
    advantage of it. If this is the case, contact me via PM so I can issue new, special ID.
    In case you own more devices, you can use one transaction ID on up to 10 of them.

    4) If you are using your own custom builds of GB for personal use, you will get hash mismatch
    upon verifying your ID as verification system accepts requests only from official releases of GB.
    If you want to be able to verify IDs with your custom build, contact me via PM so I can setup
    a special hash for your build.
    If you are using a custom build that you provide for broader group of users (e.g. in a custom ROM),
    it is necessary to ask for new hash everytime your new custom version is released for public use.
    These rules are based on mutual trust so please, do not violate them.

    - @bgcngm for his code contributions to the project
    - @MohammadAG for Xperia specific contributions to the project
    - @rovo89 for his ultimate Xposed framework and "Volume keys to skip track" mod
    - @peptonib for starting me up with this project
    - @Tungstwenty for Fake ID vulnerability patch
    - @simmac for app icon
    - @romracer for Motorola specific code contributions
    - THL W8 owners for providing support and feedback
    - CyanogenMod project
    - ParanoidAndroid project
    - SlimBean, RootBox, AOKP, OmniROM projects
    - Sergey Margaritov for ColorPickerPreference
    - All those who provided translations for different languages (Mr.Premise, peptonib, kidmar, ch-vox, romashko, Indiant, lelemm, oicirbaf, unavix, LuHash, WedyDQ10, mp3comanche, awaaas, liveasx, samsonbear, Eric850130, xtrem007, benjoe1, asmb111, ...)
    - and finally, all those who keep the project alive by supporting me via donations (you know who you are)


    XDA:DevDB Information
    GravityBox [N] Xposed Framework Module, Xposed for all devices (see above for details)

    Source Code: https://github.com/GravityBox/GravityBox/tree/nougat-as

    Xposed Package Name: com.ceco.nougat.gravitybox

    Version Information
    Status: Stable
    Current Stable Version: 7.5.0
    Stable Release Date: 2019-01-23

    Created 2017-08-09
    Last Updated 2019-01-23
    Changelog 7.5.0 - 23/01/2019
    - Introducing Advanced tuning (premium feature)
    --- dynamically extracts boolean and integer configuration parameters from the Framework and System UI
    --- presents parameters and their values within GravityBox Settings interface
    --- allows overriding parameters with user-defined values
    --- designed for power users - use with caution
    - Improved Allow all rotations feature
    --- when enabled, it is possible to apply rotation lock to landscape orientation
    - Updated Turkish translations (thanks to Fatih Firinci)

    Developed and tested on:
    - Nexus 5 running AOSP 7.0
    - Nexus 5 running AOSP 7.1
    - Nexus 5X running stock 7.0
    - Nexus 5X running stock 7.1
    - OnePlus 3T running stock OxygenOS 4.5
    - Moto G5 Plus running stock 7.0

    NON-FBE version
    This version uses legacy storage instead of new Device Protected Storage.
    Designed for devices WITHOUT file-based encryption that have issues with certain storage-related features, such as choosing images for lockscreen wallpaper, etc. Note, that transition from GravityBox using one type of storage to another causes GravityBox settings reset. NON-FBE version is not available in official Xposed Repository but can be get from the official support thread at XDA forum.
    It's nice to realize it's 2018 and people are still interested in a project that started back in 2013.
    Update for Oreo will eventually come sooner or later but I would like to ask you for patience. Please understand that the project is large and migration
    from one major Android version to another takes a lot of time. E.g. the last migration from Marshmallow to Nougat took me almost a month of work.
    Gladly, we had an alpha xposed which allowed me to prepare things ahead of official release so people could experience the first GB release right after official Xposed came.
    The situation with Oreo is different, though, as there is nothing done regarding migration yet.
    Moreover, I am going through some difficult times in my job I do for a living as I am already missing some deadlines and I often work under pressure and too much stress.
    This means that my free time for Android development is now limited as I need to rest more than I normally do (or I am just getting too old).
    So let's see what I can do and stay tuned for some future development.
    What's missing in version for Nougat compared to Marshmallow
    - Launcher tweaks - won't be added back as they were not system related and thus causing trouble
    - Clear all recents - this is native now
    - ... and maybe some other I forgot about - you'll find out

    QuickSettings management
    QS management has been massively redesigned for compatibility with stock SystemUI tuner.
    GB doesn't provide tile reordering functionality anymore. It only provides interface for enabling/disabling GB specific tiles and setting their protected mode.
    There are 2 checkboxes for each tile in the list - the first checkbox is for enabling/disabling tile, the second one is for protected mode.
    There are also several stock tiles in the list with only the second checkbox - for setting protected mode (prevents using tile when device locked).
    SystemUI tuner shows only those GB tiles that are enabled in GB QS management.
    Use SystemUI tuner to drag and drop GB tiles to desired slots.

    Settings from Marshmallow
    It is possible to restore backup of the settings made in MM version of GravityBox.

    Full history of changes for transition from MM to N
    Hey ceco,
    I have a question about LED light. I know that Lenovo device is not fully suported, but it is close to AOSP, features from Gravibox I tried are working fine. My Lenovo Tab 4 8" Plus 4/64GB (device type name in my sig and byline) has for apps only blue light, but when charging it has red and when charged green light. So my question, is it possible to "unlock" and use different colors with Gravitybox Ultimate notification control for apps? Now it does not matter what color I set, it is always blue.

    Thank you, your module is the best tool, I use it since Lollipop.
    Greetings to Banska Bystrica ;)
    The thing is ultimate notification control is using standard notification properties to set notification light behavior. That's timings and color. In the API documentation there is a remark saying "hardware will do its best approximation". This means it always depends on led hardware and driver. I cannot affect this from the module. I know it is often possible to control led using sysfs (directly writing values to sysfs nodes) but I can't imagine a reliable solution which would be battery friendly.

    Regarding Oreo progress. I'm almost done with 8.1 and it took longer than I expected. There were too many surprises and challenges I had to take care of. It's still not perfect as e.g. I didn't manage to make expanded desktop fully work (on 8.0 it does) but it should be OK for general use. Now I will have to get back to 8.0 and check for any regressions I might have introduced while making 8.1 adjustments. This means I still need couple of days. Also I'll try to get back to finding a workaround for settings access from Android process on enforced selinux. That's the only big issue left.