[APP][JB][XPOSED] GravityBox v3.7.2 - tweak box for Android 4.1/4.2/4.3 [30/04/2017] - Xposed Framework Modules

GravityBox - tweak box - Xposed module for devices running Android 4.1/4.2/4.3 ROMs
Version 3.7.2 [JellyBean]
Version for KitKat is available in this thread: http://forum.xda-developers.com/showthread.php?t=2554049
READ THIS POST CAREFULLY BEFORE PROCEEDING ANY FURTHER
Hey!
After countless hours of coding and searching for proper entry points to inject code to incorporate fixes and mods, here it is:
GravityBox - a complex Xposed module targeted for devices running Android 4.1/4.2/4.3, which turns vanilla ROM into
feature-packed "non-flashing" custom ROM.
Originally, this module was designed for MTK6589 devices which lack custom ROMs built from source due to MediaTek closed-source policy.
Later on, it was adjusted to support other (non-MTK) devices running vanilla or close-to-vanilla AOSP ROMs.
Introduction
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 4.1/4.2/4.3 (ROM close enough to AOSP).
This project wouldn't be possible without rovo's Xposed framework, so huge kudos to him.
Feature highlight
GravityBox provides 2 main groups of features:
Fixes - help to fight typical MTK6589 bugs like:
--- Date&Time settings crash
--- Caller ID mismatch
--- Split conversation in messaging
--- Wakelock in calendar app periodically turning on the screen
--- Waelock in messaging app turning on the screen every time new message arrives
--- Missing TTS settings in Language&Input
--- Missing extended developer options
Mods - the set of additional useful features that make using the system more easy and fun
--- CyanogenMod Pie controls
--- Expanded Desktop
--- Statusbar QuickSettings tile management with tile reordering
--- Lockscreen targets
--- Statusbar color and transparency
--- Statusbar Brightness Control
--- Statusbar icon colors
--- Additional QuickSettings tiles:
------- Sync on/off, WiFi AP on/off, GravityBox shortcut, Torch, Network mode (2G/3G/2G+3G switch), Sleep, QuickRecord,
QuickApp, GPS on/off, Ringer mode, Volume tile
--- Quick pulldown - switches to QuickSettings when status bar is pulled down near edges
--- Auto-switch to QuickSettings when there are no notifications
--- Center clock in statusbar
--- Battery indicator style
--- Navigation bar tweaks
--- Low battery warning policy
--- Disable LED flashing when battery low
--- Disable LED while charging
--- Auto-hiding of signal icons for empty SIM Slots
--- Advanced power-off menu (reboot, recovery)
--- Volume key cursor control
--- Skip tracks by volume key long-press while screen off (thanks to rovo89)
--- More volume levels for music stream
--- Option to control safe headset media volume
--- Button for clearing all recent tasks at once
--- Fullscreen caller photo
--- CRT screen off animation
--- Minimal brightness setting
--- Autobrihtness levels adjustment
--- Lockscreen tweaks - show widgets maximized, lockscreen background style (color fill, custom image)
--- Lockscreen rotation
--- Phone tweaks - flip action, disable vibrate on call connect
--- Hardware key actions - menu long-press/double-tap, back long-press, home long-press
--- MasterKey vulnerabilities patched (thanks to @Tungstwenty)
--- Dithered Holo background
--- Option to use solid black Holo background
--- Expandable volume panel
--- Option to unlink ringtone and notifications volumes
--- Notification drawer style (background color, image for portait/landscape, transparency)
--- Button backlight modes (default, disabled, always on while screen is on)
--- Button backlight notifications (for devices that lack Notification LED)
--- Navigation bar ring targets
--- GravityBox Actions (shortcuts)
--- Lockscreen "see through"
--- Smart Radio
--- Notification control (allows controlling notification lights/sounds/vibrations on per-app basis)
--- Ascending (increasing) ring tone
... more to come
Compatibility
Some words about GB's main concept. One thing I didn't like about xposed modules was that it was always necessary to reboot a device after making a change to some option. Since GB's main concept was to turn MTK devices running stock ROM into something that's close enough to a feature-packed custom ROM, I had to take a decision - for it to be as much comfortable as possible and to really behave like a custom ROM, I had to design it to support most of the preference changes to be done on the fly without needing to reboot a device. While this sounds nice, it also brings couple of "drawbacks". For changes to be made on the fly, it is necessary to make some preparations when device starts. This means, even if you don't use the particular feature, the necessary preparation/modification is already there and is waiting for the user to come and change that option.
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 as if you installed ROM built from source for Nexus to some Xperia device - it won't work.
Next thing, GB is a complex module and is not suitable for 1 purpose scenario. This means, if you are running custom ROM built from source (CM, PAC, ...), 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.
And finally, the last. 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 4.1, 4.2 and 4.3 (AOSP)
- supports majority of MTK6589, MTK6577, MTK8389 devices
- supports "Google devices" like Nexus, HTC One Google play edition, and others running vanilla Android 4.1/4.2/4.3
- Samsung Touchwiz, HTC Sense, MIUI, LeWa, 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.
- DO NOT USE WITH CUSTOM ROMS LIKE CM,AOSPA,ROOTBOX,AOKP,SLIM, ETC... IT MAKES NO SENSE AND CAN CAUSE CONFLICTS AND UNEXPECTED BEHAVIOUR
- 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
Prerequisites
To use this module, the following conditions must be met
- You have a device running Android 4.1/4.2/4.3 that's based on AOSP (vanilla or close-to-vanilla Android)
- ROM must be rooted (XposedInstaller requires root to be able to install framework into system)
- You have working custom recovery allowing you to make a backup before installing Xposed framework
GravityBox has been developed and tested on THL W8 5" XHDPI device (MTK6589)
Installation
If you are using my GravityMod2 ROM, don't follow these instructions to update!
There's a flashable ZIP for updating GravityBox in GravityMod2 thread!
These instructions are only for those not running GravityMod2 ROM!
1) Backup your current ROM in custom recovery. I am serious. Don't skip this step.
2) Get the Xposed installer from Download section from Xposed official thread (the latest version is typically available at this link: http://dl.xposed.info/latest.apk)
3) Install and run Xposed installer and follow the instructions to activate Xposed framework
4) Reboot. If device doesn't boot that means that the Xposed framework is not compatible with ROM you are currently
running. You don't need to continue with the next steps. You will have to restore your ROM from backup.
5) Download, GravityBox.apk attached at the end of this post, rename it to GravityBox.apk and install it
6) Make sure GravityBox app is installed to internal memory. If it was installed to phone storage or external storage,
move it to the internal memory, first
7) Run Xposed installer, go to Modules menu and activate GravityBox by checking the checkbox
8) Reboot
9) Launch GravityBox from app drawer or from Xposed installer and set options as desired
Videos
- Xposed framework install plus gravity box module overview (thanks to Rootjunky.com & Marshall Williams)
- Gravity Box - What is it and How to install it (thanks to @D3VI0US)
Reporting bugs
If you experience problems with certain feature, provide the full-detailed info that can help me
to reproduce the bug and attach debug.log file you'll find in either:
/data/xposed directory in case of Xposed Installer version prior to 2.3
or
/data/data/de.robv.android.xposed.installer/log in case of XposedInstaller 2.3+
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 MTK6589 device so it is not guaranteed that
it will work flawlessly on yours.
Multilanguage support
Volunteers are welcome to translate GravityBox to other languages.
Simply download this file: https://github.com/GravityBox/GravityBox/blob/jellybean/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
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
https://github.com/GravityBox/GravityBox/blob/jellybean/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 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's one premium feature: Backup/restore of GB settings.
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.
Credits
- @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
- THL W8 owners for providing support and feedback
- CyanogenMod project
- ParanoidAndroid project
- SlimBean, RootBox, AOKP, OmniROM projects
- Sergey Margaritov for ColorPickerPreference
- @Tungstwenty for MasterKey vulnerabilities patch
- 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)
Changelog
https://github.com/GravityBox/GravityBox/blob/jellybean/CHANGELOG.txt
XDA:DevDB Information
GravityBox [JB] Xposed Framework Module, Tool/Utility for the Android General
Contributors
C3C076, bgcngm
Source Code: https://github.com/GravityBox/GravityBox/tree/jellybean
Version Information
Status: Stable
Current Stable Version: 3.7.2
Stable Release Date: 2017-04-30
Created 2013-11-30
Last Updated 2017-04-30

Changelog 3.7.2 - 30/04/2017
- Download Progress Bar: implemented extensions from SBDP module
--- added option for progress bar animation
--- added option for centered progress bar
--- added option for progress bar thickness
--- added option for edge margin
--- added support for multiple concurrent progress bar notifications
--- keeps track of all available progress bar notifications and switches between them
--- added support for clearable notifications containing progress bar
--- added logic for auto-hiding progress of idle notifications
--- added option for sound notification
--- added option for playing sound only when screen is off
- Made screenshot faster by introducing dynamic context-aware delay
- Adjusted for compatibility with the latest GravityBox Unlocker v1.4.3
--- improved reliability of license validation
--- !!! won't work with older versions of the Unlocker !!!
- Updated Chinese (Simplified) translations (thanks to liveasx)
- Updated Hungarian translations (thanks to benjoe1)
Complete commit history for 3.7.1->3.7.2

C3C076 said:
2) Get the Xposed installer (XposedInstaller_2.1.x.apk) from Xposed official thread
3) Install and run Xposed installer and follow the instructions to activate Xposed framework
Click to expand...
Click to collapse
I am presuming that because I already have v3.0 of gravitymod installed and have gravitybox in my system menu that I do not need to do the above

No. In gm2, that's already integrated.
You don't need to install anything while on gm2 not even gravitybox.apk.
This would replace one installed in the system already and it will stop working.
This thread is mainly for those not running gm2.

I've just installed it succesfully on my zte v987(4.2.1),great work,i hope more mods to come soon
can you add to wake up the screen with the volume buttons?
Sent from my ZTE V987 using xda app-developers app

New version up.
Changelog 1.0.2 - 11/06.2013
- changed versioning
- added Slovak translations
- added Spanish translations (thanks to @peptonib )
- added Italian translations (thanks to @kidmar )

Though i dont have mt6589 device.. im happy to see some one working hard for MTK devices....
Keep going... :thumbup:
Sent from my IRIS_501 using xda premium

ulvergr said:
I've just installed it succesfully on my zte v987(4.2.1),great work,i hope more mods to come soon
can you add to wake up the screen with the volume buttons?
Click to expand...
Click to collapse
Yes! It would be very useful. It works really nice on zopo 810/H7500+. Thanks for your job!

Very good application!
It works perfect in phone Miz Z5 and fix for calendar works perfect. It was something that irritated me ...
Now we just need to have the transparent statusbar.
Thank you very much for this great application
Edit: you could remove the "R" of roaning a fix?

Stay tuned for more.
Coming soon: QuickSettings tile management + 3 additional tiles implemented: Sync on/off, Wifi hotspot on/off and GravityBox shortcut.

can you add option for CRT on\off animation?
thanks!

New version available. Download in the first post.
Changelog 1.1.0 - 14/06.2013
- status bar quick settings management
--- allows to show/hide quicksettings tiles
--- added Sync on/off tile
--- added WiFi AP (hotspot) on/off tile (long-touch opens Tether settings)
--- added GravityBox tile (opens GravityBox app)
- added Danish translations (thanks to Mr. Premise)
- added Czech tranalstions (thanks to unavix)
- added French translations (thanks to ch-vox)
- added Russian translations (thanks to romashko)
- added Spanish translations (thanks to peptonib)
- added Catalan translations (thanks to peptonib)
- updated Italian translations (thanks to kidmar)
- updated Slovak translations

C3C076 said:
- added Danish translations (thanks to Mr. Premise)
Click to expand...
Click to collapse
If any Danish speakers can suggest a better translation for "tiles" than "felter", which I'm not completely happy with, I'll change it for the next release.

Hi,
Trying to install GravityBox.apk on 2 different devices but getting error message "There is a problem parsing the package"
Is file intact? Any ideas?
Cheers

The file is OK. I checked it just now.
What devices and what version of android?

C3C076 said:
The file is OK. I checked it just now.
What devices and what version of android?
Click to expand...
Click to collapse
@ OP
Installed it on my Canvas HD(mt6589) but unable to get Advanced Power-off menu working..:/ Any suggetions.?

Power-off menu is hooked to Power-off.
So if you press Power-off a dialog will popup to choose from power-off, reboot or recovery.

I would suggest adding a last menu item in GravityBox, named "About" so one could check version, writter, maybe a link to this thread... :good:

Yes. I was thinking about it already but I haven't had enough time because I dedicated all my free time to bring in new features
I am also thinking about adding "new update" notifications.

New version available.
Updated translation files are welcome. You'll find the current string XMLs for different languages here:
https://github.com/C3C0/GravityBox/tree/master/res (in values-xx folders, where xx is your country code)
Changelog 1.2.0 - 16/06/2013
- option to set statusbar color and transparency
--- thanks to Sergey Margaritov for ColorPickerPreference
- option to unlock Voice search and TTS settings in Language&Input
- option to unlock advanced developer options
- revamped preference screen
- added About section with links to relevant threads
- fixed bug in QuickSettings that caused dynamic tiles to become invisible (thanks to boozezela for pointing out)
- added reboot confirmation dialogs
- added Hungarian translations (thanks to Indiant)

Related

[APP][LP][XPOSED] GravityBox v5.6.0 - tweak box for Android 5 [23/09/2018]

GravityBox - all-in-one tweak box - Xposed module for devices running AOSP Lollipop
Version 5.6.0 [Lollipop]
Version for JellyBean is available in this thread: http://forum.xda-developers.com/xposed/modules/app-gravitybox-v3-1-4-tweak-box-android-t2316070
Version for KitKat is available in this thread: http://forum.xda-developers.com/xposed/modules/app-gravitybox-v3-1-5-tweak-box-android-t2554049
Version for Marshmallow is available in this thread: http://forum.xda-developers.com/showthread.php?t=3251148
READ THIS POST CAREFULLY BEFORE PROCEEDING ANY FURTHER
Version for Lollipop has been tested on Nexus 5 and thus should be compatible with all the Nexus devices running stock Google system. Starting with v5.0.3alpha, compatibility with Motorola Moto G Dual SIM (and potentially other Motorola devices) has been improved.
Introduction
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 5 (ROM close enough to AOSP).
This project wouldn't be possible without rovo's Xposed framework, so huge kudos to him.
Feature highlight
--- CyanogenMod Pie controls
--- Expanded Desktop
--- Statusbar QuickSettings tile management with additional tiles and reordering /* work in progress */
--- Statusbar icon coloring
--- Statusbar Brightness Control
--- Center clock in statusbar
--- Battery indicator style
--- Navigation bar tweaks including cursor control keys
--- Low battery warning policy
--- Disable LED flashing when battery low
--- Disable LED while charging
--- Advanced power-off menu (reboot, recovery)
--- Volume key cursor control
--- Skip tracks by volume key long-press while screen off (thanks to rovo89)
--- More volume levels for music stream
--- Option to control safe headset media volume
--- Button for clearing all recent tasks at once
--- Minimal brightness setting
--- Autobrihtness levels adjustment
--- Lockscreen tweaks
--- Hardware/navigation key actions
--- Notification drawer style (background color, image for portait/landscape, transparency)
--- Button backlight modes (default, disabled, always on while screen is on)
--- Dialer (Phone) tweaks
--- Google Launcher tweaks
--- Screen recording
--- GravityBox Actions - interface for 3rd party apps
--- Smart Radio
--- Notification control (per-app notification LED/sounds/vibrations)
--- Ascending ring tone
... more to come
Compatibility
Some words about GB's main concept. One thing I didn't like about xposed modules was that it was always necessary to reboot a device after making a change to some option. Since GB's main concept was to turn MTK devices running stock ROM into something that's close enough to a feature-packed custom ROM, I had to take a decision - for it to be as much comfortable as possible and to really behave like a custom ROM, I had to design it to support most of the preference changes to be done on the fly without needing to reboot a device. While this sounds nice, it also brings couple of "drawbacks". For changes to be made on the fly, it is necessary to make some preparations when device starts. This means, even if you don't use the particular feature, the necessary preparation/modification is already there and is waiting for the user to come and change that option.
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 as if you installed ROM built from source for Nexus to some Xperia device - it won't work.
Next thing, GB is a complex module and is not suitable for 1 purpose scenario. This means, if you are running custom ROM built from source (CM, PAC, ...), 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.
And finally, the last. 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 5 (AOSP)
- supports "Google devices" like Nexus, HTC One Google play edition, and others running vanilla Android 5
- supports Motorola Moto G Dual SIM running stock Lollipop
- supports Zopo Speed 7 running Lollipop 5.1 and potentially other MediaTek devices running Lollipop 5.1
- 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.
- DO NOT USE WITH CUSTOM ROMS LIKE CM,AOSPA,ROOTBOX,AOKP,SLIM,CATACLYSM,OMNI AND THEIR OTHER CLONES... IT MAKES NO SENSE AND CAN CAUSE CONFLICTS AND UNEXPECTED BEHAVIOUR
- 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
trjlive said:
As is detailed in the OP, GravityBox is designed to be used with stock, vanilla AOSP ROMs, not OEM and custom ROMs. In other words, Google Play Edition and Nexus devices. All OEM ROMs (TouchWiz, Sense, Xperia, Moto, etc.), and custom ROMs (CyanogenMod, ParanoidAndroid, etc.) differ significantly in their code base from pure AOSP. And as most of these ROMs are closed source, and the developer does not have access to all the devices, it means that GravityBox is not designed for, or tested on, these devices and ROMs.
Even though the Moto devices look like stock Android, they are as much custom under-the-hood as TouchWiz or Sense. It's just that Motorola decided to implement a skin that resembles stock Android, rather than a custom skin like Samsung has done. But the changes to the core code mean that many of GravityBox's features will not work, and actually do cause some well-known bugs. The same goes for ParanoidAndroid, there are just too many changes to the core code for GB to be reliable.
If you choose to use GravityBox on a ROM it was never intended to be used with, then you do so at your own risk, and without any support. You should always have a good nandroid backup and be familiar with ADB and Fastboot. At any time, a ROM update or GravityBox update may cause any/all GravityBox features to break, and worst case, send your device into a bootloop. This is just an unfortunate reality of using a mod on a device it wasn't intended to be used on. Any user who wishes to improve or fix bugs on their unsupported ROM is more than welcome to download the source code for GravityBox (links to Git in the OP) and work on debugging and fixing the bugs on their own.
Click to expand...
Click to collapse
Prerequisites
To use this module, the following conditions must be met
- You have a device running Android 5 that's based on AOSP (vanilla or close-to-vanilla Android)
- ROM must be rooted (XposedInstaller requires root to be able to install framework into system)
- You have working custom recovery allowing you to make a backup before installing Xposed framework
GravityBox Lollipop version has been developed and tested on Nexus 5
Installation
1) Follow instructions for installation of Xposed Framework alpha version for Lollipop
In case of Lollipop 5.1, make sure to use unofficial Xposed Framework Alpha.
2) Download, GravityBox APK from the second post, rename it to GravityBox.apk and install it.
Alternatively, you can download the latest GravityBox directly from Xposed Installer (search for GravityBox [LP] module).
3) Make sure GravityBox app is installed into internal memory. If it was installed into phone storage or external storage,
move it into the internal memory first (applies only to devices having additional or external storage)
7) Run Xposed installer, go to Modules menu and activate GravityBox by checking the checkbox
8) Reboot
9) Launch GravityBox from app drawer or from Xposed installer and set options as desired
Videos
- Xposed framework install plus gravity box module overview (thanks to Rootjunky.com & Marshall Williams)
- Gravity Box - What is it and How to install it (thanks to @D3VI0US)
Documentation
Thanks to @cadarn07, there's a comprehensive and searchable User Guide listing
all of the GravityBox features. It's an EverNote document located at https://www.evernote.com/pub/cadarn07/gravitybox
Reporting bugs
If you experience problems with certain feature, provide the full-detailed info that can help me
to reproduce the bug and attach debug.log file you'll find in:
/data/data/de.robv.android.xposed.installer/log
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 tor ead 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/lollipop/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/lollipop
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
https://github.com/GravityBox/GravityBox/blob/lollipop/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 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's one premium feature: Backup/restore of GB settings.
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.
Credits
- @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)
Changelog
https://github.com/GravityBox/GravityBox/blob/lollipop/CHANGELOG.txt
XDA:DevDB Information
GravityBox [LP] Xposed Framework Module, Xposed for all devices (see above for details)
Contributors
C3C076
Source Code: https://github.com/GravityBox/GravityBox/tree/lollipop
Xposed Package Name: com.ceco.lollipop.gravitybox
Version Information
Status: Stable
Current Stable Version: 5.6.0
Stable Release Date: 2018-09-23
Created 2015-02-22
Last Updated 2018-09-23
Changelog 5.6.0 - 23/09/2018
- QuietHours: additional enhancements and redesign
--- rules for ligts/vibrations/sounds/ringer whitelist can now be set for each time range independently
--- manual mode has its own set of rules that are independent of automatic time ranges
--- initial ringer whitelist for newly created time range is inherited from manual mode settings
--- added option for controlling current mode directly from the QuietHours settings
--- reorganized settings
--- !!! data structure changes render existing time ranges incompatible - need to be reconfigured !!!
- Updated Ukrainian translations (thanks to burunduk)
- Updated Turkish translations (thanks to Fatih Firinci)
- Updated Russian translations (thanks to gaich)
Complete commit history for 5.5.2->5.6.0
What's missing in version for Lollipop 5.1 compared to 5.0
- unlinked ringer/notification control volumes cannot be controlled within Sound&notification settings, only within expanded volume panel.
What's missing in version for Lollipop compared to KitKat
- No ring targets in lock screen - obsolete in Lollipop as there is no ring security screen available
- No ring targets in navbar - Google replaced search panel with completely different one
having simple circle with one target. It's not using GlowPadView anymore. In order to implement ring targets
as we know them from Kitkat would probably be to completely replace stock search panel with the one from Kitkat
- Brightness control currently doesn't work in lock screen as status bar is covered with keyguard panel
- and maybe some other smaller features I forgot to mention, mainly since they were obsolete in Lollipop
Full commit history can be found in project's github.
Other remarks
- Although LP comes with native "quiet hours", I decided to keep UNC Quiet hours.
There's a freedom of choice to either use stock Interruptions system or GB's quiet hours
- Battery style and percent revised to support new status bar which has 3 modes: normal, keyguard, header
- Brightness control now works with Auto adjustment turned on the similar way as brightness slider in quick settings
- Low battery warning changed as there is no Low battery warning dialog anymore
- Ascending ringtone has been reworked completely (thanks to CM12)
- million of other small adjustments - you'll find out for yourself
Awesome. Will try it. Thanks much...
... where's the download link? (sry, i can't see it ç.ç)
i'm not found gravitybox LP only found KK
W3ND31 said:
... where's the download link? (sry, i can't see it ç.ç)
Click to expand...
Click to collapse
Batum69 said:
i'm not found gravitybox LP only found KK
Click to expand...
Click to collapse
Patience....
Got ninja'ed - it's already in the second post
nimrodsv said:
Patience....
Click to expand...
Click to collapse
okay ç.ç
What took longer, coding GB to work on LP, or writing the OP? ?
I hope everyone takes the time to read through all that info. You've covered a lot of scenarios there! I predict many posts that will say "Did you read the OP?"
Thanks for your work
For LP ! This sounds awesome ! Thankss
@C3C076: Entering PayPal ID results in a message saying the app is maybe modified (which is not)
It's happening.
Working fine on stock GPE 5.0.1 M7, great job :good:
defim said:
@C3C076: Entering PayPal ID results in a message saying the app is maybe modified (which is not)
Click to expand...
Click to collapse
Yeah. I forgot to register hash for this release. Already fixed in the database.
Thanks for pointing out.
If anyone nedd any confirmation, everything running fine on my pure aosp build @ hammerhead!
Thank you very much. Its like christmas again!
Great Job, all OK on Galaxy S5 G900F with Blisspop Nightly 02.20
Thank you!!!
ID 4-----------------S
Purchased and donated
Waiting for Xposed on stock Lollipop was totally worth it, instead of shifting to custom ROM.
Great job, first release, and already works so well.
@C3C076
Hi, thank you soooo much...
I found one small bug, I set Data traffic monitor to right, but on lock screen is in middle...
And few error logs...
@C3C076: Might want to link to the Xposed for Lollipop thread in the OP instead of the legacy thread.
Also, grats on making the front page news again and featured on Android Police.
Good job making it in such short timespan. Can't wait for the volume panel transparency and quicksettings config. :good:

[APP][O][XPOSED] GravityBox v8.6.0 - tweak box for Android 8 [14/02/2021]

GravityBox - all-in-one tweak box - Xposed module for devices running AOSP Oreo
Version 8.6.0 [Oreo]
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
Version for Nougat is available in this thread: https://forum.xda-developers.com/showthread.php?t=3653953
READ THIS POST CAREFULLY BEFORE PROCEEDING ANY FURTHER
Introduction
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 8 (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
Compatibility
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 8 (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.
- DO NOT USE WITH CUSTOM ROMS MODULE WAS NOT EXPLICITLY DESIGNED FOR
- 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 [O] has been designed for and tested on
- Nexus 5X running stock 8.0
- Nexus 5X running stock 8.1
- OnePlus 3T running official OOS 5.0.1
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:
/data/user_de/0/de.robv.android.xposed.installer/log
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/oreo/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/oreo-as-edxposed
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
https://github.com/GravityBox/GravityBox/blob/oreo/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.
Credits
- @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
- @simmac for app icon
- @romracer for Motorola specific code contributions
- @firefds for Samsung specific code contributions
- CyanogenMod project
- ParanoidAndroid project
- Slim, 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, Fatih Firinci, ...)
- and finally, all those who keep the project alive by supporting me via donations (you know who you are)
Changelog
https://github.com/GravityBox/GravityBox/blob/oreo-as-edxposed/CHANGELOG.txt
Changelog 8.6.0 - 14/02/2021
- Added compatibility with EdXposed v0.5+ and LSPosed
- Added support for LSPosed module scope feature (auto-whitelist)
- Maintains backwards compatibility with EdXposed v0.4 and OG Xposed Framework
--- moving from old OG Xposed Framework to EdXposed/LSPosed is now strongly recommended, though!
- Does not require Xposed Resource Hooking support to be enabled anymore!
- Resource replacement:
--- redesigned for better compatibility and performance
--- implemented support for aliased resources pointing to Framework resources
--- Added support for resource overlays:
------ improves Advanced Tuning compatibility with systems using Theme overlays
------ fixes "Remove corner padding" option on Nokia (and other) devices
------ fixes hiding navigation bar by disabling "Enable navigation bar" option in Navbar tweaks
- StatusbarClock: respect time zone changes when showing seconds
- StatusbarClock: keep master switch for Clock tweaks off by default (thanks to aviraxp)
- Media: improved compatibility of More music volume steps feature
- Keys: improved reliability of Torch on power long-press
- ImagePicker: use dedicated library for cropping images instead of unreliable camera CROP intent
- About: added references to EdXposed and Riru
- Fixed XSharedPreferences Unexpected EOF errors showing in Xposed log
- Fixed layout/scaling of all GravityBox view elements affected by DPI change when screen resolution changes
IMPORTANT: Module settings are reset when framework is upgraded from EdXposed v0.4/OG Xposed to EdXposed v0.5.1+/LSPosed
due to changes in preferences storage location for modules in EdXposed v0.5/LSPosed
It is recommended to create a backup of GravityBox settings before upgrading the framework.
Developed and tested on:
- Nexus 5X running stock 8.0
- Nexus 5X running stock 8.1
- OnePlus 3T running stock OOS 5.0.1 and Beta
Download
Release 8.6.0 · GravityBox/GravityBox
Added compatibility with EdXposed v0.5+ and LSPosed Added support for LSPosed module scope feature (auto-whitelist) Maintains backwards compatibility with EdXposed v0.4 and OG Xposed Framework --- ...
github.com
EdXposed / LSPosed
Modules is compatible with EdXposed as well as LSPosed
Required whitelisted packages
- Android System (android)
- System UI (com.android.systemui)
- Call Management (com.android.server.telecom)
- Download Manager (com.android.providers.downloads)
- Phone (com.android.dialer or com.google.android.dialer)
- Phone (com.android.incallui) (OxygenOS only)
Important info about GravityBox and Oreo
Preferences and SeLinux
Although there is a limitation in current beta of Xposed Framework which prevents modules from reloading preferences within Android process,
GravityBox has been redesigned to overcome that limitation. This means enforced SeLinux is fully supported and thus it is not necessary to run Permissive.
Navigation bar tweaks on Pixel devices running proprietary Google SystemUI plugin
As I currently don't own any Pixel device I didn't have a chance to test nor adjust related features for such scenario.
I cannot tell how their plugin affects the way module works but let's wait for some feedback.
It is also possible that Navigation bar tweaks is not the only place where incompatibilities may show up.
Expanded Desktop in Oreo 8.1
Expanded Desktop is currently not fully supported in Oreo 8.1 (seems to be working fine in 8.0, though).
Despite there are almost no differences in related Android system parts between 8.0 and 8.1, I didn't manage to fix it, and I am currently not sure what's causing a differnt behavior.
There are only 2 modes available in 8.1 - Hide navigation bar and Semi-immersive (which is also temperamental)
Data activity indicator for Cellular icon
Due to changes in stock signal cluster layout type it is no longer possible to put activity indicators on top of a signal icon.
Therefore this feature has been redesigned to place narrov view containinig indicators right beside the signal icon.
WiFi is OK - there were no changes in layout type.
Notification drawer style in Oreo 8.1
Custom wallpaper/color for notification drawer is currently not supported in 8.1.
QuickSettings management
QS management has been massively redesigned for compatibility with stock SystemUI tuner back in Nougat and the same approach is taken for Oreo.
GB doesn't provide tile reordering functionality anymore. It only provides interface for enabling/disabling GB specific tiles and setting their protected mode (and other settings).
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 stock tile management to drag and drop GB tiles to desired slots.
Settings from Nougat
It should be possible to restore backup of the settings made in N version of GravityBox.
Full history of changes for transition from N to O
https://github.com/GravityBox/GravityBox/compare/v7.0.6_n...v8.0.0-beta-1_o
Nice work!
Yeah Doe!!!!
Looking forward to test this! Great job!
I just tried this on my Google Pixel on Android 8.1 and I know you were asking this in the OP but all of the navigation bar tweaks I tried work perfectly! Every single tweak I tried works. If you would like me to test anything out for you on my Pixel, let me know.
Thank you so, so much for this. You have no idea how extruciating it was waiting for Xposed to get ported to Oreo and then GravityBox. It is my most-used mod and hoenstly the only thing keeping me using Android. You have no idea how much better of a phone experience I have with GravityBox.
You are amazing. Thank you again.
Absolutely fantastic work mate! So cool we can enjoy the great GB so soon!
Battery icon position not correct please fix this
I "finally" worked out all of the bugs with the N rom I am using on my OnePlus 5 and then you release this most awaited gem today... HALLELUJAH! :highfive:
nice work!
What a sight of relief!
Thanks
thank you for your work! i donate when i get it to work?
my Problem : systemless xposed on pixel2xl, gravitybox dont recognize xposed.. - "waiting on gravitybox system framework" - > "framework closed" :S
Blooddrunked said:
thank you for your work! i donate when i get it to work?
my Problem : systemless xposed on pixel2xl, gravitybox dont recognize xposed.. - "waiting on gravitybox system framework" - > "framework closed" :S
Click to expand...
Click to collapse
Make a full reboot after enabling the module
Sent from my Google Pixel 2 XL using XDA Labs
@C3C076 is there any way to get some type of extended SystemUI tuner function? Like how on stock you can get rid of certain status bar icons. Custom ROMs have all icons exposed so you can get rid of them. Like the VPN key for instance. Thanks so much for this. Definitely gonna be making a donation ?
Prattham said:
Make a full reboot after enabling the module
Click to expand...
Click to collapse
i did
Blooddrunked said:
i did
Click to expand...
Click to collapse
My setup is same and it works fine
Sent from my Google Pixel 2 XL using XDA Labs
What are the Tweaks under fingerprint launcher ? Do it enables fingerprint gestures ?
Nice work though
Sahib Pandotra said:
What are the Tweaks under fingerprint launcher ? Do it enables fingerprint gestures ?
Nice work though
Click to expand...
Click to collapse
You can define action for each enrolled fingerprint independently. Thus you can use different fingers for different actions + one quick tap action.
It's just my "must have" what a release! Thank you!
Ps:working like a charm on S4 i9505 Oreo 8.1 AOSP JDCTeam.

[APP][P][XPOSED] GravityBox v9.2.1 for Android 9 [07/03/2021]

GravityBox - all-in-one tweak box - Xposed module for devices running Android Pie
Version 9.2.1 [Pie]
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
Version for Nougat is available in this thread: https://forum.xda-developers.com/showthread.php?t=3653953
Version for Oreo is available in this thread: https://forum.xda-developers.com/showthread.php?t=3739929
READ THIS POST CAREFULLY BEFORE PROCEEDING ANY FURTHER
Introduction
The app utilizes Riru and EdXposed Magisk module which uses original Xposed Framework API created by rovo89.
!!!!!! WARNING !!!!!!
This module utilizes EdXposed Framework which is still in early development stage and may contain bugs or might not be fully compatible with system of your Android device. I take no responsibility for any issues arising from using GravityBox with EdXposed and strongly recommend creating a full backup of your device before activating the module.
Requirements
- Magisk v17 or later
- Riru v16 or later
- EdXposed v0.3.0.0-beta2 or later
- EdXposed Installer v2.2.1 or later
Installation
This procedure assumes you have working Magisk installation.
1) Install Riru and EdXposed modules using Magisk Manager
2) Install EdXposed Installer app
3) Reboot and open EdXposed Installer app to check if EdXposed works and is active
4) Install GravityBox and enable it in EdXposed Installer
5) Reboot
Required whitelisted packages
In case you use blacklist/whitelist functionality of EdXposed make sure all the following packages are whitelisted (not blacklisted respectively) for full GravityBox experience.
- Android System (android)
- System UI (com.android.systemui)
- Call Management (com.android.server.telecom)
- Download Manager (com.android.providers.downloads)
- Phone (com.android.dialer or com.google.android.dialer)
- Phone (com.android.incallui) (OxygenOS only)
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
Compatibility
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 9 (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.
- DO NOT USE WITH CUSTOM ROMS MODULE WAS NOT EXPLICITLY DESIGNED FOR
- 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 [P] has been designed for and tested on
- Nexus 5X running Pixel Experience Android Pie 9.0
- OnePlus 3T running OxygenOS
- OnePlus 7 Pro running OxygenOS
- Pixel 3a running Google OS
Reporting bugs
If possible, please use Github issue reporting interface for 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:
/data/user_de/0/com.solohsu.android.edxp.manager/log
If you use different manager or there is no log file present, use ADB to capture log: adb logcat -s EdXposed-Bridge
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/pie/GravityBox/src/main/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/pie
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
https://github.com/GravityBox/GravityBox/blob/pie/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
- Advanced tuning
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.
Credits
- @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
- @simmac for app icon
- @romracer for Motorola specific code contributions
- @firefds for Samsung specific code contributions
- CyanogenMod project
- ParanoidAndroid project
- Slim, 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, Fatih Firinci, ...)
- and finally, all those who keep the project alive by supporting me via donations (you know who you are)
Changelog
https://github.com/GravityBox/GravityBox/blob/pie/CHANGELOG.txt
Changelog 9.2.1 - 07/03/2021
- Added support for LSPosed module scope feature (auto-whitelist)
- BatteryPercent: fixed percent text injection not working on some systems
- BatteryPercent: follow status bar clock appearance
- Clock: reverted to old hooking strategy for better compatibility
- Dialer: adjusted for compatibility with the latest Google Dialer
--- fixes muting Dialpad tones during UNC Quiet Hours
Developed and tested on:
- Nexus 5X running Pixel Experience ROM
- OnePlus 3T running OxygenOS
- OnePlus 7 Pro running OxygenOS
- Pixel 3a running Google OS
Download
https://github.com/GravityBox/GravityBox/releases/tag/v9.2.1_p
Also available in official Xposed Repository as well as LSPosed repository.
Required whitelisted packages
In case you use blacklist/whitelist functionality of EdXposed make sure all the following packages are whitelisted (not blacklisted respectively) for full GravityBox experience.
- Android System (android)
- System UI (com.android.systemui)
- Call Management (com.android.server.telecom)
- Download Manager (com.android.providers.downloads)
- Phone (com.android.dialer or com.google.android.dialer)
- Phone (com.android.incallui) (OxygenOS only)
Commit history
Full commit history for transition from 9.2.0 to 9.2.1
Full commit history for migration from Oreo to Pie
Don't know if it's still a thing.. but first! Great job btw! Many, many people were waiting for this. Keep up the good work and thank you for all the work you've done and continue to do for the XDA family!
Finally ?️
Thank you for great works and your effort! ??️
Fair play to you lad...hats off to you!
Thank you for your amazing hard work down through the years here on Xda
...you bring pleasure to our phones...
??
-Center clock mode does not working and when I turn it on, send me to the lock screen.
-Volume step increaser seems just added more steps cause it automatically start again same as 0 to 15th and 16th to 30.
-Lock screen tweaks also not working for me.
-Battery stats works fine
-Status bar brightness control works fine
Great works! Thank you??️
SM-G955F with one ui
At last, finally, thanks dev for your hard work ?
Thanks ?
Sent from my Galaxy S8 using XDA Labs
Wew great work hats off to you :good:
Thank you kind sir!
Working great on latest as of today Canary magisk.
Pixel 3xl stock rooted.
Congratulations for your hard work!
When I updated from Nougat to Oreo I backed up and restored GB settings successfully. Have you tested if it's possible to do the same for Oreo - > Pie?
Sent from my OnePlus 5 using XDA Labs
Kudos to dev for this. Some of the problems i am facing:
Selecting battery bar to show at bottom edge shows just below the status bar.
https://drive.google.com/file/d/1fNzk1RuMuz675FdteahCUNjXNJaKhqLe/view?usp=drivesdk
Data traffic monitor hiding status bar icons when selecting right as location.
https://drive.google.com/file/d/14ZQ8Tacy6HwesCBmZnd9WbS1ui6fPI4b/view?usp=drivesdk
On overriding navigation keys action for back and recents i lose vibration feedback.
Power key long press for torch on screen off doesn't work.
When i toggle system network speed indicator icon the system battery icon is flashed for a little bit and then cancelled.
https://drive.google.com/file/d/1_mG80UM1P-YlYo0WLxnHwxItASj0F_iE/view?usp=drivesdk
Some questions:
The location tile provides battery saver, devuce inly, high accuracy. But google has removed these types in android pie. Does the option work as their names suggest or they have all the same function??
Some requests:
Additonal quick settings row.
Separation of ring and notification volume.
Oneplus 5 Stock OOS
Thanks again for your awesome work. It speaks for itself that so many people have been waiting for exactly this module to be ready for Pie, right @sjamie? So GB and XE are ready, are you?
Anyway, I have literally gone through almost each and every possible setting and I have to state, that GB has never worked so flawlessly before. Not even under Oreo with latest xposed.
I am running stock OOS (9.0.4), Magisk 18.1, latest EdXposed and latest riru and Pi Kernel.
At last, I'd be nice if you could add a PayPal link to the OP, so I can send another donation. Coz through the app the amount is limited to 3 euros and that is simply not enough!
Wow… great efforts
One note
Advance reboot menue does not work. Nothing happen when activated
Thanks a lot
Thank you OP. This projects encourages lot of users to stick with android.
No bugs thus far for what I'm using.
First of all, a big thank you for making this work on pie!
This is the one module that I had no hesitation getting the premium unlock. This is a must have, at least to me!
Okay so I gave it a try as soon as I saw the post of the first beta for pie, and as expected (for note 9) it was working partially. I'm not encluding any logs for now because I'm not expecting you to fix stuff for samsung at the moment or even afterwards (let me know in case you are thinking of supporting One UI someday down the road). So this is more about informing you how good it is on note 9 (korean version N960N), as a tester.
-when I have music visualization enabled and whenever I lock or unlock the screen, the sound effect of V4A stops and return as the visualization appears (poweramp playing music as I'm doing this). The same happens when toggling visualization for navbar; as I'm toggling it on and off the sound effect turns off very very briefly and comes back on. It's like a refresh thingy.
-advanced power menu is not working at all (even after reboots).
-circular battery is working but the percentage inside it looks weird sometimes and sometimes the stock battery icon appears alongside the circular one.
-data traffic indicator works without issues.
-status bar brightness control works only when adaptive brightness is turned off (I guess that's normal?).
-download progress seems to work only for google play downloads (I guess it's normal as well?).
-trusted Wi-Fi works like a charm.
-pie control works but I haven't tinkered will all the options. So far so good.
-one last thing, the color of icons/indicators from gb on status bar always look grey-ish? No matter the status bar color change. So sometimes they are hard to see.
That's all I have tested for now.
You are awesome!
Sent from my SM-N960N using XDA Labs
Thanks, being beta bugs are to be expected. I started with what I use most frequently - will add as I check
Fingerprint actions not working on any of the 5 selected slots (be it apps/shortcuts) - "No app/ action assigned" toast message pops up. Toggle enabled and rebooted. Also disabled from Installer, enabled and rebooted. Didn't help
Stock MiA1 (Android one)
Dropbox ? for EdXposed logs https://www.dropbox.com/s/8lg28md759crgw4/xposed_error_20190308_232340.log?dl=0. I can't see any logs in com. Solohosu....
If you need logs using laptop, it will take a few days
Edit : Same result with GB as only module
Installer log https://www.dropbox.com/s/07bqhhg15xxkv2u/xposed_error_20190309_005557.log?dl=0
Edit 2: Surprisingly, quick tap action works for both shortcuts and apps so it's not a fingerprint issue
Edit 3: Toggling config-fingerprint-support-gestures from false to true and reboot didn't help
Don't know if i'm doing something wrong but i can't get past the framework check at the beggining. Using EdXposed and Magisk 18.1
Moto G6Play
Thank You!! GB is even working fine with v0.2.9.8-beta1
The only thing I miss is
"Swap Volume Buttons in Landscape"
Great Effort, you are a Genius

[APP][Q][XPOSED] GravityBox v10.1.2 for Android 10 [07/03/2021]

GravityBox - all-in-one tweak box - Xposed module for devices running Android 10
Version 10.1.2 [Q]
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
Version for Nougat is available in this thread: https://forum.xda-developers.com/showthread.php?t=3653953
Version for Oreo is available in this thread: https://forum.xda-developers.com/showthread.php?t=3739929
Version for Pie is available in this thread: http://forum.xda-developers.com/showthread.php?t=3908768
READ THIS POST CAREFULLY BEFORE PROCEEDING ANY FURTHER
Introduction
The app utilizes Riru and EdXposed Magisk module which uses original Xposed Framework API created by rovo89.
!!!!!! WARNING !!!!!!
This module utilizes EdXposed Framework which is still in early development stage and may contain bugs or might not be fully compatible with system of your Android device. I take no responsibility for any issues arising from using GravityBox with EdXposed and strongly recommend creating a full backup of your device before activating the module.
Requirements
- Magisk v19 or later
- Riru v19.5 or later (Magisk module)
- Official EdXposed release (Magisk module)
(CHOOSE WHATEVER VERSION WORKS BEST ON YOUR SETUP - EXPERIENCE SHOWS THAT DIFFERENT VERSIONS WORK DIFFERENTLY ON DIFFERENT DEVICES/SYSTEMS)
- EdXposed Manager (Application)
- Avoid using Resource hooking support if possible (Can be disabled in EdXposed Manager settings)
Installation
This procedure assumes you have working Magisk installation.
1) Install Riru and EdXposed modules using Magisk Manager
2) Install EdXposed Manager app
3) Reboot and open EdXposed Manager app to check if EdXposed works and is active
4) Install GravityBox and enable it in EdXposed Manager
5) Reboot
Required whitelisted packages
In case you use blacklist/whitelist functionality of EdXposed make sure all the following packages are whitelisted (not blacklisted respectively) for full GravityBox experience.
- Android System (android)
- System UI (com.android.systemui)
- Call Management (com.android.server.telecom)
- Download Manager (com.android.providers.downloads)
- Phone (com.android.dialer or com.google.android.dialer)
- Phone (com.android.incallui) (OxygenOS only)
Note that using Blacklist/Whitelist mode in EdXposed Manager may have side effects such as Zygote not
being able to access module preferences due to SELinux restrictions which results in relevant features not being enabled even if
they are enabled in module settings. This is EdXposed limitation/glitch
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
Compatibility
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 10 (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.
- DO NOT USE WITH CUSTOM ROMS MODULE WAS NOT EXPLICITLY DESIGNED FOR
- 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 [Q] has been designed for and tested on
- OnePlus 7 Pro running OxygenOS 10
- Nexus 5X running Pixel Experience 10
- Pixel 3a running Google OS
Reporting bugs
If possible, please use Github issue reporting interface for 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:
/data/user_de/0/com.solohsu.android.edxp.manager/log
If you use different manager or there is no log file present, use ADB to capture log: adb logcat -s EdXposed-Bridge
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/q/GravityBox/src/main/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/q
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
https://github.com/GravityBox/GravityBox/blob/q/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.
Credits
- RikkaW for creating and maintainng Riru Magisk module
- solohsu & MlgmXyysd for creating and maintaining EdExposed Magisk module
- @frank93 for donating Pixel 3a for development
- @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
- @simmac for app icon
- @romracer for Motorola specific code contributions
- @firefds for Samsung specific code contributions
- CyanogenMod project
- ParanoidAndroid project
- Slim, RootBox, AOKP, OmniROM projects
- Sergey Margaritov for ColorPickerPreference
- ArthurHub for Image cropping library
- 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, Fatih Firinci, ...)
- and finally, all those who keep the project alive by supporting me via donations (you know who you are)
Changelog
https://github.com/GravityBox/GravityBox/blob/q/CHANGELOG.txt
Changelog 10.1.2 - 07/03/2021
- Clock: reverted to old hooking strategy for better compatibility
- Dialer: adjusted for compatibility with the latest Google Dialer
--- fixes muting Dialpad tones during UNC Quiet Hours
Developed and tested on:
- OnePlus 7 Pro running OxygenOS
- Pixel 3a running Google OS
- Nexus 5X running Pixel Experience
Current issues
- Power: Proximity wake up not working on OP7Pro (and maybe other devices) due to proximity sensor not reporting proper value until device is fully awaken
- Key actions: Home double-tap not working
- Key actions: Haptic-feedback on OxygenOS may feel a little delayed on keys that have actions defined; as it is performed on key release to avoid double vibrations
- Lockscreen: Changed custom carrier text won't appear immediately
- ... + potentially others mainly device/system variation specific
Design changes
- Navigation bar dimension changes require reboot
Download
https://github.com/GravityBox/GravityBox/releases/tag/v10.1.2_q
Module is also available in official Xposed Repository and LSPosed repository.
Required whitelisted packages
In case you use blacklist/whitelist functionality of EdXposed make sure all the following packages are whitelisted (not blacklisted respectively) for full GravityBox experience.
- Android System (android)
- System UI (com.android.systemui)
- Call Management (com.android.server.telecom)
- Download Manager (com.android.providers.downloads)
- Phone (com.android.dialer or com.google.android.dialer)
- Phone (com.android.incallui) (OxygenOS only)
Note that using Blacklist/Whitelist mode in EdXposed Manager may have side effects such as Zygote not
being able to access module preferences due to SELinux restrictions which results in relevant features not being enabled even if
they are enabled in module settings. This is EdXposed limitation/glitch
Commit history
Commit history for transition from 10.1.1 to 10.1.2
Just saw play store unlock key got updated, then see your post. Thanks for your great work!
Thanks..cant wait to try this once my phone gets android 10 support.
edison0354 said:
Just saw play store unlock key got updated, then see your post. Thanks for your great work!
Click to expand...
Click to collapse
Pardon my ignorance, but what's play store unlock key? Thanks
hallo dare said:
Pardon my ignorance, but what's play store unlock key? Thanks
Click to expand...
Click to collapse
He's talking about "GravityBox Unlocker".
Sent from my #FlagshipKiller6T using Tapatalk
Working pretty well right off the bat. Thanks! Gotta have my status bar brightness tweak!
OP7pro
Some tweaks are superfluous on OOS 10, but of course this mod isn't exclusive to OOS.
Haven't yet tested if enabling both stock and GB tweaks simultaneously causes hiccups
Humble request eventually. I've been trying out OOS gestures; it would be cool to add tweaks to those such as slide and hold back gesture for custom actions.
Great work!
C3C076 said:
Changelog 10.0.0-beta-1 - 28/09/2019
- Initial beta version for Android 10
Developed and tested on:
- OnePlus 7 Pro running OxygenOS
Current issues
- Power: Proximity wake up not working on OP7Pro (and maybe other devices) due to proximity sensor not reporting proper value until device is fully awaken
- Key actions: Home double-tap not working
- Key actions: Haptic-feedback on OxygenOS may feel a little delayed on keys that have actions defined; as it is performed on key release to avoid double vibrations
- Key actions: action to kill foreground app not working
- Lockscreen: Changed custom carrier text won't appear immediately
- Media: Expanded volume panel is not linked to stock expand button functionality of OxygenOS
- ... + potentially others mainly device/system variation specific
Design changes
- Navigation bar dimension changes require reboot
EdXposed related recommendations
- For OxygenOS, make sure to use version with a Bootloop fix from here: https://github.com/ElderDrivers/EdXposed/pull/354 (YAHFA version seems to be more stable)
- Keep Resource hooking support disabled in EdXposed Installer settings if possible, as EdXposed doesn't seem to be stable enough in that part
Download
https://github.com/GravityBox/GravityBox/releases/tag/v10.0.0-beta-1_q
Module will be available in Xposed Repository as soon as it is considered stable enough.
Required whitelisted packages
In case you use blacklist/whitelist functionality of EdXposed make sure all the following packages are whitelisted (not blacklisted respectively) for full GravityBox experience.
- Android System (android)
- System UI (com.android.systemui)
- Call Management (com.android.server.telecom)
- Download Manager (com.android.providers.downloads)
- Phone (com.android.dialer or com.google.android.dialer)
- Phone (com.android.incallui) (OxygenOS only)
Commit history
Full commit history for migration from Pie to Q
Click to expand...
Click to collapse
i just installed this and made a few mods on my status bar etc. do you happen to know if this cause battery drain?
If I set both navbar heights to 0 and reboot everything seems fine, until I go into landscape then back to portrait, the navbar comes back in portrait (it still remains hidden in landscape)
LOS 17
Moto G3
Edxposed 4.5.5 sandhook
Gravity Box V10 beta-1
While ik custom rom support isn't guaranteed, LOS17 codebase at the moment is very close to AOSP and they've yet to add any navbar customization
Also the reason for me to set navbar heights to 0 instead of disabling the navbar outright is that the back gesture of Q relies on the navbar being enabled while the bottom swipe gestures don't need a navbar to work
Any possibility of a 4G/LTE toggle on Q. As well as a toggle for LTE+ as some carriers disable said icons in certain regions.
Sent from my Google Pixel 3a XL using XDA Labs
---------- Post added at 06:35 AM ---------- Previous post was at 06:06 AM ----------
DanGLES3 said:
If I set both navbar heights to 0 and reboot everything seems fine, until I go into landscape then back to portrait, the navbar comes back in portrait (it still remains hidden in landscape)
Click to expand...
Click to collapse
Also, can confirm this happens on stock for me to.
Sent from my Google Pixel 3a XL using XDA Labs
buzzaldrine said:
i just installed this and made a few mods on my status bar etc. do you happen to know if this cause battery drain?
Click to expand...
Click to collapse
GravityBox is designed with care regarding battery consumption, so no, there shouldn't be any unexpected battery drain nor long-term wake locks.
DanGLES3 said:
If I set both navbar heights to 0 and reboot everything seems fine, until I go into landscape then back to portrait, the navbar comes back in portrait (it still remains hidden in landscape)
LOS 17
Moto G3
Edxposed 4.5.5 sandhook
Gravity Box V10 beta-1
While ik custom rom support isn't guaranteed, LOS17 codebase at the moment is very close to AOSP and they've yet to add any navbar customization
Also the reason for me to set navbar heights to 0 instead of disabling the navbar outright is that the back gesture of Q relies on the navbar being enabled while the bottom swipe gestures don't need a navbar to work
Click to expand...
Click to collapse
Skittles9823 said:
Any possibility of a 4G/LTE toggle on Q. As well as a toggle for LTE+ as some carriers disable said icons in certain regions.
Also, can confirm this happens on stock for me to.
Sent from my Google Pixel 3a XL using XDA Labs
Click to expand...
Click to collapse
There was config_show4GForLTE in GravityBox / Advanced Tuning / SystemUI available in Pie but it's no longer there on Q so it seems like it was removed in Q.
Regarding navbar 0 dimensions. Hard to tell as I can't reproduce on OP7Pro.
This feature overrides framework config values so it is quite mystery to me that different values could be read from config after orientation change.
Resource config value replacement happens no matter what orientation, and always when config values are referenced.
Also, when your device has vertical navbar in ladnscape, you must set "Navigation bar width" to 0 instead of landscape height.
Edit: also try what kind of results you get when activating Expanded desktop using "Hide navigation bar" mode.
(Expanded desktop mode can be set in Display tweaks. Expanded desktop mode can be activated either from the power menu or using QS tile
Current Expanded desktop state is persisted across reboots).
Is that padding normal ?
and WiFi with Vibration Mode disappeared
C3C076 said:
There was config_show4GForLTE in GravityBox / Advanced Tuning / SystemUI available in Pie but it's no longer there on Q so it seems like it was removed in Q.
Click to expand...
Click to collapse
Well that's unfortunate. I'll have to speak to my carrier and see if I can get it changed, or something. I doubt they'll go through with it but it's worth a shot.
Sent from my Google Pixel 3a XL using XDA Labs
Systemless? I use GPay all the time and I want to try this out. Magisk hide works right now and idk if it will work with GB.
can't try this module as after installing riru and edxposed modules I get a bootloop
you know what I am doing wrong maybe? I am on pixel 3 with official Q, rooted with magisk canary latest version, and just installed the two apk's mentioned and the two modules below:
magisk-EdXposed-SandHook-v0.4.5.1_beta.4463.-release.zip
magisk-riru-core-v19.5.zip
any clue? tia
FcukBloat said:
can't try this module as after installing riru and edxposed modules I get a bootloop
you know what I am doing wrong maybe? I am on pixel 3 with official Q, rooted with magisk canary latest version, and just installed the two apk's mentioned and the two modules below:
magisk-EdXposed-SandHook-v0.4.5.1_beta.4463.-release.zip
magisk-riru-core-v19.5.zip
any clue? tia
Click to expand...
Click to collapse
Try switching to the Yahfa backend. I had the same issue as well initially but after switching all was fine. It seems to be far more stable compared to sandhook.
Sent from my Google Pixel 3a XL using XDA Labs
Skittles9823 said:
Try switching to the Yahfa backend. I had the same issue as well initially but after switching all was fine. It seems to be far more stable compared to sandhook.
Sent from my Google Pixel 3a XL using XDA Labs
Click to expand...
Click to collapse
thanks will try as soon as I hopefully fix the bootloop, didn't consider the YAHFA version because was reported to be for OOS. will see thanks again!
Hi,
Just installed Q version but at the same time that XPRIVACY which caught me in a bootloop...
Now it's fully working on my Pixel 3A running QP1A.190711.020.C3, EXKERNEL and XPOSED 4470 (last canary).
I'm also becoming a donator since I've used your plugin since my 1st android device running kit kat!
Thanks a lot!
Edit : Been using Sandhook version.
First bug : after enabling more steps to audio control, process android.media gets a lot of forced closed.
Wolfblade1215 said:
Systemless? I use GPay all the time and I want to try this out. Magisk hide works right now and idk if it will work with GB.
Click to expand...
Click to collapse
EdXposed passes SafetyNet and uses Magisk, so yes it is 'systemless'
FcukBloat said:
can't try this module as after installing riru and edxposed modules I get a bootloop
you know what I am doing wrong maybe? I am on pixel 3 with official Q, rooted with magisk canary latest version, and just installed the two apk's mentioned and the two modules below:
magisk-EdXposed-SandHook-v0.4.5.1_beta.4463.-release.zip
magisk-riru-core-v19.5.zip
any clue? tia
Click to expand...
Click to collapse
Because you didn't read much regarding EdXposed compatibility. The stable release of EdXposed is still not compatible with Q. You need to use the fix zips which are available under Pull Requests in GitHub page of EdXposed.
Sent from my #FlagshipKiller6T using Tapatalk
DarkSJ1998 said:
EdXposed passes SafetyNet and uses Magisk, so yes it is 'systemless' Because you didn't read much regarding EdXposed compatibility. The stable release of EdXposed is still not compatible with Q. You need to use the fix zips which are available under Pull Requests in GitHub page of EdXposed.
Click to expand...
Click to collapse
thanks. well i followed information and links in requirements section in OP... now i realize the yahfa version linked is the fixed one, the sandhook version links to the old non-fixed one

[ON HOLD] [Unofficial] Gravitybox [S] Version

PROJECT IS TEMPORARILY STOPPED SINCE I DON'T OWN A A12 DEVICE!
GravityBox - all-in-one tweak box - Xposed module for devices running Android 12
Version 12.0.0S
OP/REALME USERS ! USERS ON ANDROID 12! READ BOST 2 BEFORE USING THIS MOD! TO AVOID SYSTEM UI CRASH!
READ THIS POST CAREFULLY BEFORE PROCEEDING ANY FURTHER! I DO NOT TAKE CREDITS FOR THIS WORK. THERE WAS ONLY ONE CHANGE TO MAKE GRAVITYBOX RUNNING ON A12! WHETHER IF EVERYTHING ISN'T WORKING OR NOT THAT'S OUR GOAL TO FIND OUT!
Introduction
The app utilizes Riru-EdXposed Magisk OR LSposed module which uses original Xposed Framework API created by rovo89.
!!!!!! WARNING !!!!!!
This module utilizes EdXposed Framework which is still in early development stage and may contain bugs or might not be fully compatible with the system of your Android device. I take no responsibility for any issues arising from using GravityBox with EdXposed and strongly recommend creating a full backup of your device before activating the module.
Requirements
- Magisk v21 or later
- Riru v23 or later (Magisk module)
- EdXposed Manager (Application)
- Avoid using Resource hooking support if possible (Can be disabled in EdXposed Manager settings)
-LSposed (highly recommended since it doesn't break safetynet)
Installation
This procedure assumes you have working Magisk installation.
1) Install Riru module in Magisk Manager
2) Install and run EdXposed Manager app and download Riru-EdXposed module v5.1.3.x or later (currently Alpha/Canary)
3) Install downloaded Riru-EdXposed module in Magisk Manager
5) Reboot and open EdXposed Manager app to check if EdXposed works and is active
6) Install GravityBox and enable it in EdXposed Manager
7) Reboot and profit
Required whitelisted packages
In case you use blacklist/whitelist functionality of EdXposed make sure all the following packages are whitelisted (not blacklisted respectively) for full GravityBox experience.
- Android System (android)
- System UI (com.android.systemui)
- Call Management (com.android.server.telecom)
- Download Manager (com.android.providers.downloads)
- Phone (com.android.dialer or com.google.android.dialer)
- Phone Services (com.android.phone)
- Phone (com.android.incallui) (OxygenOS only)
- Keyboard app (e.g. Gboard) in order to be able to use "Volume key cursor control" feature
It is strongly recommended to use Whitelist functionality for better performance as EdXposed hooks only smaller amount of processes.
In case of running multiple Xposed modules consult their whitelist requirements with the devs of module.
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
GravityBox S has been designed for and tested on
- Motorola edge 20 Pro A12
-
Reporting bugs
Please don't post it on the git. this is just too see what's works and what doesnt. You can report bugs in here and see how many we find
Source code
GravityBox is opensource. Sources are available in my gihub: https://github.com/GravityBox/GravityBox/tree/r
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
https://github.com/GravityBox/GravityBox/blob/r/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 three premium features:
- Backup/restore of GB settings.
- Ultimate notification control
- Advanced Tuning
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.
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.
Credits
-C3C0 For gravitybox releases in general. This is all his work so all credits to him! - RikkaW for creating and maintainng Riru Magisk module
- solohsu & MlgmXyysd for creating and maintaining EdExposed Magisk module
- @frank93 for donating Pixel 3a for development
- @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
- @simmac for app icon
- @romracer for Motorola specific code contributions
- @firefds for Samsung specific code contributions
- CyanogenMod project
- ParanoidAndroid project
- Slim, RootBox, AOKP, OmniROM projects
- Sergey Margaritov for ColorPickerPreference
- ArthurHub for Image cropping library
- 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, Fatih Firinci, ...)
- and finally, all those who keep the project alive by supporting me via donations (you know who you are)
Changelog
Initial test release to find out what works and what doesn't
Currently not working:
-Advanced reboot options
-Statusbar Brightness Slide
-Quick Settings Management
-Disabling alarm info on lock screen doesn't seem to work
OnePlus OOS 12 Broken Features
-if you move status bar clock to middle you will get constant systemui fc black screen can't get out unless you remove module via adb.
-Date and day of week options do not work also.
-Battery icon does not display on lock screen. Only in screen on
-Expanded volume panel is broken on one plus
Working with LSposed ?
Pandemic said:
Working with LSposed ?
Click to expand...
Click to collapse
Works with LSPosed I've updated op
Updated OP with new version. To avoid confusion all about links will go to this thread instead of R version. (This includes all translated languages as well)
This is too avoid bugs being reported on wrong thread
Wow, great to see this!
nickelnine said:
Wow, great to see this!
Click to expand...
Click to collapse
Phase note this is just updated to work on A12. Functions will be broken. But the majority seems to be working
ko_hi said:
GravityBox - all-in-one tweak box - Xposed module for devices running Android 12
Version 12.0.0S
READ THIS POST CAREFULLY BEFORE PROCEEDING ANY FURTHER! I DO NOT TAKE CREDITS FOR THIS WORK. THERE WAS ONLY ONE CHANGE TO MAKE GRAVITYBOX RUNNING ON A12! WHETHER IF EVERYTHING ISN'T WORKING OR NOT THAT'S OUR GOAL TO FIND OUT!
Introduction
The app utilizes Riru-EdXposed Magisk OR LSposed module which uses original Xposed Framework API created by rovo89.
!!!!!! WARNING !!!!!!
This module utilizes EdXposed Framework which is still in early development stage and may contain bugs or might not be fully compatible with the system of your Android device. I take no responsibility for any issues arising from using GravityBox with EdXposed and strongly recommend creating a full backup of your device before activating the module.
Requirements
- Magisk v21 or later
- Riru v23 or later (Magisk module)
- EdXposed Manager (Application)
- Avoid using Resource hooking support if possible (Can be disabled in EdXposed Manager settings)
-LSposed (highly recommended since it doesn't break safetynet)
Installation
This procedure assumes you have working Magisk installation.
1) Install Riru module in Magisk Manager
2) Install and run EdXposed Manager app and download Riru-EdXposed module v5.1.3.x or later (currently Alpha/Canary)
3) Install downloaded Riru-EdXposed module in Magisk Manager
5) Reboot and open EdXposed Manager app to check if EdXposed works and is active
6) Install GravityBox and enable it in EdXposed Manager
7) Reboot and profit
Required whitelisted packages
In case you use blacklist/whitelist functionality of EdXposed make sure all the following packages are whitelisted (not blacklisted respectively) for full GravityBox experience.
- Android System (android)
- System UI (com.android.systemui)
- Call Management (com.android.server.telecom)
- Download Manager (com.android.providers.downloads)
- Phone (com.android.dialer or com.google.android.dialer)
- Phone Services (com.android.phone)
- Phone (com.android.incallui) (OxygenOS only)
- Keyboard app (e.g. Gboard) in order to be able to use "Volume key cursor control" feature
It is strongly recommended to use Whitelist functionality for better performance as EdXposed hooks only smaller amount of processes.
In case of running multiple Xposed modules consult their whitelist requirements with the devs of module.
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
GravityBox S has been designed for and tested on
- Motorola edge 20 Pro A12
-
Reporting bugs
Please don't post it on the git. this is just too see what's works and what doesnt. You can report bugs in here and see how many we find
Source code
GravityBox is opensource. Sources are available in my gihub: https://github.com/GravityBox/GravityBox/tree/r
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
https://github.com/GravityBox/GravityBox/blob/r/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 three premium features:
- Backup/restore of GB settings.
- Ultimate notification control
- Advanced Tuning
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.
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.
Credits
-C3C0 For gravitybox releases in general. This is all his work so all credits to him! - RikkaW for creating and maintainng Riru Magisk module
- solohsu & MlgmXyysd for creating and maintaining EdExposed Magisk module
- @frank93 for donating Pixel 3a for development
- @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
- @simmac for app icon
- @romracer for Motorola specific code contributions
- @firefds for Samsung specific code contributions
- CyanogenMod project
- ParanoidAndroid project
- Slim, RootBox, AOKP, OmniROM projects
- Sergey Margaritov for ColorPickerPreference
- ArthurHub for Image cropping library
- 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, Fatih Firinci, ...)
- and finally, all those who keep the project alive by supporting me via donations (you know who you are)
Changelog
Initial test release to find out what works and what doesn't
Click to expand...
Click to collapse
Nice initiative. Disabling alarm info on lock screen doesn't seem to work too.
Lord Sithek said:
Nice initiative. Disabling alarm info on lock screen doesn't seem to work too.
Click to expand...
Click to collapse
Nice find i am not if changing career text is working since i don't have sim interested
@ko_hi
-if you move status bar clock to middle you will get constant systemui fc black screen can't get out unless you remove module via adb.
-Date and day of week options do not work also.
-Battery icon does not display on lock screen. Only in screen on
toolhas4degrees said:
@ko_hi
-if you move status bar clock to middle you will get constant systemui fc black screen can't get out unless you remove module via adb.
-Date and day of week options do not work also.
-Battery icon does not display on lock screen. Only in screen on
Click to expand...
Click to collapse
I didn't face the systemui went black when i tried it but can check again later
Edit: centering the clock works just fine.
What os are you on?
ko_hi said:
I didn't face the systemui went black when i tried it but can check again later
Edit: centering the clock works just fine.
What os are you on?
Click to expand...
Click to collapse
Oos12 Android 12. OnePlus 10pro.
Just reporting what doesn't work. Sorry I didn't state my device
toolhas4degrees said:
Oos12 Android 12. OnePlus 10pro.
Just reporting what doesn't work. Sorry I didn't state my device
Click to expand...
Click to collapse
That's ok i can update my OnePlus device to A12 soon
ko_hi said:
That's ok i can update my OnePlus device to A12 soon
Click to expand...
Click to collapse
What device?
toolhas4degrees said:
What device?
Click to expand...
Click to collapse
OnePlus 8 pro
ko_hi said:
OnePlus 8 pro
Click to expand...
Click to collapse
Yeah 12 has been available for a while
toolhas4degrees said:
Yeah 12 has been available for a whileView attachment 5635353
Click to expand...
Click to collapse
I've been staying on A10 since IR camera
ko_hi said:
I've been staying on A10 since IR camera
Click to expand...
Click to collapse
There were several way to reinitiate it on a11. don't know if they have made it work on a12 yet
toolhas4degrees said:
There were several way to reinitiate it on a11. don't know if they have made it work on a12 yet
Click to expand...
Click to collapse
I never got it to work on stock camera. Even though manuel test mode it works
Tried this on my Pixel 6 Pro but it's not working. LSPosed logs say "GravityBox you are running is not designed for Android SDK 32". Anyone has an idea what can be done? Thanks

Categories

Resources