Comments (6)
You definitely make good points. A few thoughts:
So if some hook in one package fails, it won't affect the other packs
My concern is that if there's an incompatibility, some of our hooks might break things rather than just cleanly failing completely.
We need to keep in mind 2 things
How about this? Have all of the master switches default to "on", and only ever show them if you enable an "I am an advanced user" toggle. Then in cases where users don't like or understand them, they can just pretend they don't exist, and things will work exactly like they do today.
from aospmods.
The master switch is a good idea in terms of "compatibility". Meaning if one rom is not compatible with certain hooks, turning them off will let user at least use the other ones
What we have done in AOSPMods that is a bit different from Gravitybox is that we've separated the mods into different packages. So if some hook in one package fails, it won't affect the other packs
We need to keep in mind 2 things:
- Users are not technical people and we can't expect them to understand the concept of hooking and such master switches
- Users prefer to see their changes apply immediately. By using master switches we lose this option. But without it, at least we always have the "base" to apply things quickly in "most cases"
Finally: this conversation is not over: we really welcome continuing this discussion
from aospmods.
Makes sense!
about the hooks that break things, we CAN implement in a way that they don't:
- If we gather the classes, methods, and even fields in advance (so if they are not there, they can break the mod package silently)
This way, we can handle incompatibilities to break cleanly. If you take a look into the Framework mods (like power torch), I did this practice, since I was really scared of bootloops (If they crash zygote, it's a certain bootloop). But I really didn't care about this that much on sysui mods (in favor of implementation speed at this stage)
Anyway: Your point about the advanced user section makes sense to me. Once we get to a more stable situation (in terms of users waiting for some important mods), we hopefully will start doing this
from aospmods.
I assigned BOTH of us to this case. Maybe you can have a hand in this feature as well
from aospmods.
This is probably what you're looking for:
from aospmods.
Yes, that's exactly what I had in mind.
from aospmods.
Related Issues (20)
- "Force AOD while charging" only takes effect under specific conditions HOT 4
- [Bug] Loss of functionality in canary-363 for long press torch feature HOT 4
- Remove call record announcement not working in canary 365 [Bug] HOT 5
- [Bug] System UI crashing after reboot HOT 5
- Brightness Changes when sliding Status bar [Bug] HOT 2
- Hide Statusbar Clock in homescreen HOT 2
- [Bug] Status bar always displays 4 notification icons + dot, unregarding of maximum number setting HOT 3
- Dashed Battery Circle getting themed[Bug] HOT 1
- Hide system icons (include clock) in the status bar HOT 2
- Some suggestions HOT 1
- [Bug] SystemUI keep restarting in Canary-371 HOT 5
- While flashlight is on, volume keys control its brightness HOT 1
- 3.4.0 App crashes when pressing Lockscreen HOT 4
- [Bug] Force Closes When Pressing Lockscreen Tab HOT 10
- depth effect wallpaper clock opacity and wallpaper position [Bug] HOT 1
- [Bug] Incomplete white QS theme HOT 5
- Com.android.settings permanently non-responding HOT 4
- Does this work on android 14 (one UI) (I have a samsung s23)? HOT 5
- [BUG] App screws up my phone HOT 7
- [Bug] Fingerprint on AOD is delayed HOT 7
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from aospmods.