Is there a way or a tool to record or trace system settings changes?

GiladB

Member
Sometimes it's hard to find the right ones that correspond to the right settings, and is annoying to scroll through the countless options.

Anybody knows of anything like that?
 

Jacob L

Moderator (Lawsonator)
Have a
Sometimes it's hard to find the right ones that correspond to the right settings, and is annoying to scroll through the countless options.

Anybody knows of anything like that?
Halved a look at the app called SetEdit. It might help you find.

Alternatively, there's the shell script action which accepts bash commands. So you can use ADB to get settings values, then change a setting and then run the command again to see any changes
 

GiladB

Member
Have a

Halved a look at the app called SetEdit. It might help you find.

Alternatively, there's the shell script action which accepts bash commands. So you can use ADB to get settings values, then change a setting and then run the command again to see any changes
Using the "Shell Script" action, it outputs: "/system/bin/sh: <stdin>[4]: adb: inaccessible or not found". Using ADB on Windows works fine.
 

Jacob L

Moderator (Lawsonator)
Using the "Shell Script" action, it outputs: "/system/bin/sh: <stdin>[4]: adb: inaccessible or not found". Using ADB on Windows works fine.
You don't need to type ADB shell. You just use the commands
 

RSF

Well-known member
@GiladB - SetEdit looks interesting relative to being able to search for settings. ADB will work, as long as you have the right permissions and are familiar with using diff or other shell commands to compare files.
FYI: if those don't work out for whatever reason, there's another app, Tasker, similar in concept to MacroDroid. It has a feature that allows you to change a setting using the Android UI, and then tells you the name (and value) of the setting you just changed. If you want to check out that Tasker settings function, it's its Settings > Custom Settings action, followed by tapping tapping the magnifying glass icon for the setting name then tapping "Find". Change the setting and tap the magnifying glass again.
Note that Tasker, like MacroDroid, charges a fee to use the full app; although it's nominal, you may not want to get it just for this settings feature. (I use both MacroDroid and Tasker for phone automation; both have many strong points and features.)
 

GiladB

Member
@GiladB - SetEdit looks interesting relative to being able to search for settings. ADB will work, as long as you have the right permissions and are familiar with using diff or other shell commands to compare files.
FYI: if those don't work out for whatever reason, there's another app, Tasker, similar in concept to MacroDroid. It has a feature that allows you to change a setting using the Android UI, and then tells you the name (and value) of the setting you just changed. If you want to check out that Tasker settings function, it's its Settings > Custom Settings action, followed by tapping tapping the magnifying glass icon for the setting name then tapping "Find". Change the setting and tap the magnifying glass again.
Note that Tasker, like MacroDroid, charges a fee to use the full app; although it's nominal, you may not want to get it just for this settings feature. (I use both MacroDroid and Tasker for phone automation; both have many strong points and features.)
SetEdit is nice to scroll through but MacroDroid can also do it. SetEdit is just a bit more convenient. Thank you, I might try Tasker as the last resort but might be able to create a macro for that.
 

GiladB

Member
You don't need to type ADB shell. You just use the commands
Still doesn't work when running "settings list global".
What an I missing?
Exception occurred while executing 'list':java.lang.SecurityException: Permission Denial: getCurrentUser() from pid=12135, uid=10353 requires android.permission.INTERACT_ACROSS_USERS at com.android.server.am.UserController.checkGetCurrentUserPermissions(UserController.java:2724) at com.android.server.am.UserController.getCurrentUser(UserController.java:2729) at com.android.server.am.ActivityManagerService.getCurrentUser(ActivityManagerService.java:17734) at com.android.providers.settings.SettingsService$MyShellCommand.onCommand(SettingsService.java:268) at com.android.modules.utils.BasicShellCommandHandler.exec(BasicShellCommandHandler.java:97) at android.os.ShellCommand.exec(ShellCommand.java:38) at com.android.providers.settings.SettingsService.onShellCommand(SettingsService.java:58) at android.os.Binder.shellCommand(Binder.java:986) at android.os.Binder.onTransact(Binder.java:860) at android.os.Binder.execTransactInternal(Binder.java:1220) at android.os.Binder.execTransact(Binder.java:1179)
 

MacroDroidDev

Administrator
Staff member
android.permission.INTERACT_ACROSS_USERS is not something that can be added to the manifest as standard apps cannot obtain this permission I'm afraid.
 

GiladB

Member
android.permission.INTERACT_ACROSS_USERS is not something that can be added to the manifest as standard apps cannot obtain this permission I'm afraid.
I'm not an expert and mostly learn on the go while trying more complicated macros. Why would it even require a permission for such a simple command? It doesn't change anything.
Also, I'm curious how despite MacroDroid being able to get the current values and change them, it cannot work through the shell script.
I could continue using regular ADB everytime I search for a System setting and then compare, or use Tasker like it's been suggested here. Maybe MacroDroid could adopt this feature from Tasker, but I wouldn't consider this very urgent as there are only a few useful System settings anyway.
 

smarter-phone

New member
This was something I was interested in, I began by testing a template/macro that demoed this with the system change task, writing to log and popup toast on any change, using

Code:
[system_setting_category]: [system_setting_key]: [system_setting_value]

As some notifications were missed i opted for custom popups and configured to ignore last, and this logs changes to system, secure + global

Does this help?!
 

Attachments

  • Settings_change_detector.macro
    1.6 KB · Views: 8

GiladB

Member
This was something I was interested in, I began by testing a template/macro that demoed this with the system change task, writing to log and popup toast on any change, using

Code:
[system_setting_category]: [system_setting_key]: [system_setting_value]

As some notifications were missed i opted for custom popups and configured to ignore last, and this logs changes to system, secure + global

Does this help?!
That's an old post...
At the time of me creating the post, there was no such feature on MacroDroid.
Nowadays, I use this macro which is essentially exactly what you mentioned: https://www.macrodroidlink.com/macrostore?id=15927

Popup toast wouldn't make a lot of sense because many settings change multiple values at the same time.
 

LF0

Member
You can use this tool to monitor changes to system settings. Using it is simple, just launch it, modify your system settings, and return to the tool's homepage. It will record all changed system settings with detailed timestamps.

Alternatively, you can use Tasker, which provides the same functionality.
 

Attachments

  • 设置项监视器_7.apk
    20.8 KB · Views: 8

GiladB

Member
You can use this tool to monitor changes to system settings. Using it is simple, just launch it, modify your system settings, and return to the tool's homepage. It will record all changed system settings with detailed timestamps.

Alternatively, you can use Tasker, which provides the same functionality.
You replied to an old post. At the time of creating the post, MacroDroid did not have the ability to trace these changes, but now it does.
I must admit that your apk looks very suspicious.
 

LF0

Member
You replied to an old post. At the time of creating the post, MacroDroid did not have the ability to trace these changes, but now it does.
I must admit that your apk looks very suspicious.
It's just a lightweight tool, doesn't ask for any permissions, nothing suspicious
 
Top