5,605,187 Members 39,096 Now Online
XDA Developers Android and Mobile Development Forum

[MOD][XPOSED][4.0+]App Settings v1.8 (2014-04-13)

Tip us?
 
Tungstwenty
Old
(Last edited by Tungstwenty; 13th April 2014 at 05:13 PM.) Reason: Version 1.8
#1  
Tungstwenty's Avatar
Recognized Contributor - OP
Thanks Meter 4033
Posts: 1,615
Join Date: Nov 2011

 
DONATE TO ME
Default [MOD][XPOSED][4.0+]App Settings v1.8 (2014-04-13)

Xposed module: App Settings v1.8


What it is
This is an Xposed module that allows changing generic settings on a per-app basis.
"Generic settings" means settings that are global to all applications, such as: perceived DPI, rotation behavior, fullscreen, etc.; full list is below.
These are settings that can in principle be applied to all packages, even if for some it might not produce any effects.
Not to be confused with app-specific settings. If it's something that only app Y or Z needs changing, chances are it won't belong in this module.


What the mod CAN do
Here's the list of settings that can be defined for each target package:
- DPI: Changes the DPI used by this app both when loading resources (some might be DPI-specific) and also when rendering them.
- Font Scale: Scales the font up or down, similarly to the system-wide "Font Size" setting.
- Screen dimensions: Affects the resources loaded by the app in case it bundles different ones for different screen sizes; use the "List Res." button to get some hints on the kind of alternatives the app might have for different resolutions.
- xlarge qualifier for resources: also affects alternate resources used by the apps (tipically for tablets / devices with big screens); see previous item.
- Locale: the language used by the app for loading resources, formatting numbers and dates, etc.; you can use this for apps that do include translations but don't give you an option of using a different language than your global one.
- Fullscreen: you can force an app to always use fullscreen (hiding the statusbar only, not the navigation bar for devices that have it) or never use it; on KitKat Immersive mode can also be activated.
- No title: hides the title bar, gaining more space for the actual contents. Note that many apps might crash if they're relying on some elements of the titlebar to be there.
- Keep screen on: If set, the screen won't dim or turn off after the inactivity period whenever this app is on the foreground. Remember not to put the device on your pocket with the app active.
- Show when locked: Display this app's screen on top of the lockscreen, without requiring e.g. the PIN to be entered (dangerous). Note that you'll have to find a way (somewhere else) to open the app from the lockscreen, depending on the kind of app.
- Resident in memory: If set, the system will try much harder to keep the app in memory even when you leave it. It might make the app more responsive when reopening but will also consume more RAM, possibly slowing down the overall system.
- No fullscreen IME: prevents the keyboard from taking up the entire fullscreen when in landscape mode.
- Orientation: Override the orientation settings build into the app. You can force "normal behavior" (rotate according to the device settings, even if the developer hardcoded a specific orientation), "always portrait", "always landscape" or "force auto" (use the sensors even if the auto-rotate system setting is off). Additional options exist for forced reversing the portrait or landscape orientations, use the sensor so they can be inverted by tilting the device, and 4-way rotation.
- Insistent notifications: If active, the sounds used by any of the app's raised notifications will loop endlessly. Danger of depleting the battery (and annoying crowds) if you're not around when it starts playing the sound.
- No big notifications: Prevent notifications to have an alternate layout for the "expanded" mode; it will always be collapsed and can't even be expanded manually
- Show in recents: You can prevent the app from showing on the Recents list, or force it to appear.
- Mute audio: Prevents all sound from being played from the app. If videos are played, they will be muted. (this doesn't work for all apps, due to technical limitations on the system)
- Force legacy menu button: For devices that don't have a physical menu button, menu entries will usually appear on the far right of the Action Bar. With this option, the 3-dot button will be displayed on the navbar and the menu options will appear there.
- Revoke permissions: selectively block permissions requested by the app. Needless to say, depending on the permission and the app, it's very likely that it will start failing; don't expect revoking INTERNET or READ_CONTACTS and having the apps continuing to work every time - most of them will fail unless the developer anticipated this kind of permission denials

Some of the features that help you manage the settings for each app:
Search / filter apps
- by name or package
- by type (user/system)
- by applied settings: global state, overridden or unchanged state for each setting
Shortcuts for app actions on the main list or on the individual settings screen
- launch app (main launcher activity)
- go to system settings screen (uninstall, clear data, ...)
- Play Store link (if applicable)
The app can be killed when saving settings, so they can take effect immediately after relaunch instead of requiring a reboot.


What the mod CAN'T / WON'T do
The settings you can define for each app won't add functionality that simply isn't there, such as:
- adding tablet / large screen layouts
- using languages for which no resources are included in the app
- display "properly" in portrait or landscape mode
- operate flawlessly on top of the lockscreen
- keep working as expected (whatever that means to you) even after you revoke permissions
Not only these would be not possible to implement in an app-independent way, it's also beyond the scope of this particular module.

If you're familiar with the Xposed Framework, you're probably aware that lots of things can be tweaked or added to specific apps.
However, unless it's:
- generic behavior that can be applied to most apps
- relatively easy to implement
then don't bother requesting App Settings to provide it.
If it does obey these 2 conditions, then by all means suggest it (preferably with code contributions / pull requests).


Installation
Requirements:
- Xposed Framework 2.2 or newer
- ICS (4.0.3) or newer (up to 4.4); this is not only a requirement for the framework, but also for this module due to the hooked APIs

Download:
The installation can be performed from within Xposed Framework by browsing the repository and finding the "App Settings" entry. Any updates will also appear there.
Alternatively, the repository entry can be browsed directly at http://repo.xposed.info/module/de.ro...ds.appsettings


Usage of this thread
This thread serves primarily to publish updates to the module, report bugs and suggest or discuss new features (user or developer-wise).

You can also use it to share and discuss your experiences with tweaking specific apps (e.g. resources settings, revoked permissions, etc.) - but I must warn that you should not expect feedback from me on that matter.
Quite frankly, I'm not that much of a smartphone heavy user, and I'm not willing to install loads of apps on my device in order to experiment and achieve ideal configurations for *you* to use. That's what the community is here for, though so feel free to discuss this on the thread.


Screenshots
Some images showing: main apps list; settings panel for an individual app; list of resources bundled in an app; editing permissions to revoke; menu with actions for an app; filtering by settings; filtering by permissions used.



Development
Authors: @rovo89 and @Tungstwenty
Sources: https://github.com/rovo89/XposedAppSettings
History: The foundations of this module were created by @rovo89 as a hidden feature within his Tweakbox module, which was the first daily-use mod taking advantage of the (then new) Xposed framework and somewhat of a showcase for it. By directly editing the xml settings file, it was possible to change the dpi, screen dimensions and language for an app's loaded resources.
Eventually it got promoted to its own standalone mod once a minimal UI was built to edit the configuration and more and more settings were added. It was promoted and discussed on @pulser_g2's Making Stock Custom ROMs Defunct thread and the repository he was kind enough to setup and administer some time ago.
Since it's been pretty stable for a while - both in robustness and in expected update frequency - and Xposed Framework now has repository functionality, it has come the time to create a dedicated thread for this and also bump the version to 1.x with the latest added features.

Device: Xperia Z (C6603)
ROM: Stock 4.3 10.4.B.0.569
Locked bootloader, rooted, XZDualRecovery
Mods (Xposed): App Settings, Advanced reboot menu
Retired device: Samsung Galaxy S2 (GT-I9100)

My threads that you might find useful:

SUPERCOMPUTER: what it sounded like before you bought it
The Following 217 Users Say Thank You to Tungstwenty For This Useful Post: [ Click to Expand ]
 
Tungstwenty
Old
(Last edited by Tungstwenty; 13th April 2014 at 05:06 PM.) Reason: version 1.8
#2  
Tungstwenty's Avatar
Recognized Contributor - OP
Thanks Meter 4033
Posts: 1,615
Join Date: Nov 2011

 
DONATE TO ME
Default Releases

Version 1.8 (2014-04-13)

New features:
- Mute audio (will not work on some apps)
- Allow forcing or excluding app from recents screen (thanks to @GermainZ)
- Force use of legacy (navbar) menu button
- Disable fullscreen keyboard in landscape mode
- Additional options for Orientation

Changes:
- Improved detection of changed items when closing the settings to avoid prompting if nothing is different
- Adjusted toolbar icons on main screen
- Removed unneeded implementation of the CmdInit hook

Bugfixes:
- Enforce hiding the navigation bar in immersive mode, working around Android bug (thanks to @rovo89)
- Fix incorrect orientation code used in certain situations

New or updated translations:
- Chinese (Simplified)
- Chinese (Traditional)
- Czech
- French
- German
- Greek
- Japanese
- Korean
- Slovak


Version 1.7.1 (2013-12-15)

New or updated translations:
- Brazilian Portuguese
- Chinese (Simplified)
- Chinese (Traditional)
- Japanese
- Slovakian


Version 1.7 (2013-12-15)

New features:
- Added immersive mode to the fullscreen setting on KitKat (thanks to @MohammadAG)

Changes:
- Workaround to enable DPI changes for SystemUI on KitKat (thanks to @rovo89)
- Smooth scrolling for the app list (thanks to @Dzakus)
- Enforce keeping the screen on even if the app tries to change it (e.g. Maps)

Bugfixes:
- Fix settings not readable after initial import with no active configurations


Version 1.6 (2013-11-26)

New features:
- Support for Android 4.4
- Import / Export settings (backup file is AppSettings-Backup.xml on the sdcard root)

Changes:
- Enforce the selected orientation even if the app tries to change it

New or updated translations:
- Brazilian Portuguese
- Chinese (Simplified)
- Japanese
- Slovakian


Version 1.5 (2013-09-08)

New features:
- Fullscreen can now be forced or prevented
- Prevent apps from displaying big / expanded notifications
- Allow revoking permissions to shared package (experimental)
- Display menu when long-pressing items on the app list

Changes:
- Reorder filter dialog entries to match settings screen
- Use resources for all displayed text in order to support translations
- Only display warning if the module is not active
- Restore permissions of settings file when "fix permissions" scripts mess them up
- React to SEARCH key

Bugfixes:
- Fix issue with Maps not zooming under Xposed 2.2 when some screen dimensions are selected
- Insistent notifications weren't producing effects in some situations

Device: Xperia Z (C6603)
ROM: Stock 4.3 10.4.B.0.569
Locked bootloader, rooted, XZDualRecovery
Mods (Xposed): App Settings, Advanced reboot menu
Retired device: Samsung Galaxy S2 (GT-I9100)

My threads that you might find useful:

SUPERCOMPUTER: what it sounded like before you bought it
The Following 46 Users Say Thank You to Tungstwenty For This Useful Post: [ Click to Expand ]
 
Tungstwenty
Old
#3  
Tungstwenty's Avatar
Recognized Contributor - OP
Thanks Meter 4033
Posts: 1,615
Join Date: Nov 2011

 
DONATE TO ME
Default FAQ / How To

*reserved*

Device: Xperia Z (C6603)
ROM: Stock 4.3 10.4.B.0.569
Locked bootloader, rooted, XZDualRecovery
Mods (Xposed): App Settings, Advanced reboot menu
Retired device: Samsung Galaxy S2 (GT-I9100)

My threads that you might find useful:

SUPERCOMPUTER: what it sounded like before you bought it
The Following 10 Users Say Thank You to Tungstwenty For This Useful Post: [ Click to Expand ]
 
Tungstwenty
Old
#4  
Tungstwenty's Avatar
Recognized Contributor - OP
Thanks Meter 4033
Posts: 1,615
Join Date: Nov 2011

 
DONATE TO ME
Default Reserved

*reserved*

Device: Xperia Z (C6603)
ROM: Stock 4.3 10.4.B.0.569
Locked bootloader, rooted, XZDualRecovery
Mods (Xposed): App Settings, Advanced reboot menu
Retired device: Samsung Galaxy S2 (GT-I9100)

My threads that you might find useful:

SUPERCOMPUTER: what it sounded like before you bought it
The Following 8 Users Say Thank You to Tungstwenty For This Useful Post: [ Click to Expand ]
 
ricco333
Old
#5  
ricco333's Avatar
Senior Member
Thanks Meter 256
Posts: 592
Join Date: Jul 2012
Location: Miami, FL
Awesome I believe is great to keep this module alive!! I use it all the time.

Sent from my LG-E980 using Tapatalk 4
At&t LG Optimus G Pro, Commotio 4.4.2 thanks to DHO @team Vanir
Nexus 10 32gb, running ThunderKat 4.4.2 thanks to @craigacgomez.
The Following User Says Thank You to ricco333 For This Useful Post: [ Click to Expand ]
 
tiho5
Old
#6  
tiho5's Avatar
Senior Member
Thanks Meter 563
Posts: 1,625
Join Date: Jun 2010
Thank you!
Great module! The most useful!
 
egingell
Old
(Last edited by egingell; 8th September 2013 at 11:10 PM.)
#7  
egingell's Avatar
Senior Member
Thanks Meter 1169
Posts: 3,053
Join Date: Apr 2012

 
DONATE TO ME
Quote:
Originally Posted by Tungstwenty View Post
Version 1.5 (2013-09-08)

New features:
- Fullscreen can now be forced or prevented
- Prevent apps from displaying big / expanded notifications
- Allow revoking permissions to shared package (experimental)
- Display menu when long-pressing items on the app list

Changes:
- Reorder filter dialog entries to match settings screen
- Use resources for all displayed text in order to support translations
- Only display warning if the module is not active
- Restore permissions of settings file when "fix permissions" scripts mess them up
- React to SEARCH key

Bugfixes:
- Fix issue with Maps not zooming under Xposed 2.2 when some screen dimensions are selected
- Insistent notifications weren't producing effects in some situations
Ooo... Prevent full screen.
I also noticed a significant improvement in load time as it's not scanning the entire list of apps every time. Also
Edit: And my smaller screen size apps (Screen (dp)) don't look funny anymore.

Edit: Also I thought this already had its own thread.
* Phones: Samsung SGSII Epic 4G Touch; SGSIV
* ROM: Rooted Stock JB 4.1.2; Rooted Stock JB 4.2.2
* Kernel: Stock JB 4.1.2; Stock JB 4.2.2
* Enabled non-stock features: init.d, boot animations, boot splash; init.d, boot animations
* DPI: 200; 400



* UnToaster - Block Toasts by regular expressions.
* Downloads2SD - Redirect downloads.
* [TIPS][SCRIPTS][ROOT]egingell's scripts.
* My Droid Blog
* DropBox (2-18GB free).
The Following User Says Thank You to egingell For This Useful Post: [ Click to Expand ]
 
Steph310
Old
(Last edited by Steph310; 9th September 2013 at 12:27 AM.)
#8  
Steph310's Avatar
Senior Member
Thanks Meter 1019
Posts: 1,099
Join Date: Jul 2012
Location: Toulouse, France
Lightbulb Individual brightness

Thanks for this fantastic module!
This Must Have and great module has now finally its own thread, it's perfect!
Not much to say ... Smart, easy, effective, nice update ...

I have only one wish:
Is it possible to add individual brightness?
3 choices:
- System default setting (checked by default)
- Auto brightness
- Individual level
I think that would be great!!!
The Following User Says Thank You to Steph310 For This Useful Post: [ Click to Expand ]
 
NYLimited
Old
#9  
NYLimited's Avatar
Recognized Contributor
Thanks Meter 1552
Posts: 2,935
Join Date: Jan 2008
Location: 40.75659 N 73.98626 W
Quote:
Originally Posted by Tungstwenty View Post
What the mod CAN'T / WON'T do
The settings you can define for each app won't add functionality that simply isn't there, such as:
- adding tablet / large screen layouts
- using languages for which no resources are included in the app
- display "properly" in portrait or landscape mode
- operate flawlessly on top of the lockscreen
- keep working as expected (whatever that means to you) even after you revoke permissions
Not only these would be not possible to implement in an app-independent way, it's also beyond the scope of this particular module.
I guess it is a good thing I didn't ask you about tabletui...

Thanks for the update!
The Following User Says Thank You to NYLimited For This Useful Post: [ Click to Expand ]
 
MBariya
Old
#10  
MBariya's Avatar
Senior Member
Thanks Meter 153
Posts: 457
Join Date: Mar 2012
Location: Vadinar

 
DONATE TO ME
Good Module and yes nice update.
Keep work alive.

sent from my GT-N7100. Press thanks if I helped..

The Following User Says Thank You to MBariya For This Useful Post: [ Click to Expand ]
Tags
mod, settings, xposed
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes