Riru only does one thing, inject into zygote in order to allow modules run their codes in apps or the system server.
All other Riru modules requires Riru.
See https://github.com/RikkaApps/Riru for more details.
If you are use other modules that changes ro.dalvik.vm.native.bridge
, Riru will not work. (Riru will automatically set it back)
A typical example is, some "optimize" modules changes this property. Since changing this property is meaningless for "optimization", their quality is very questionable. In fact, changing properties for optimization is a joke.
- When the file
/data/adb/riru/disable
exists, Riru will do nothing - When the file
/data/adb/riru/enable_hide
exists, the hide mechanism will be enabled
- Add read file & read dir function for "rirud". Modules can use this to read files that zygote itself has no permission to access.
Magisk's sepolicy.rule
does not work on some devices and no one report to Magisk 😒. Versions from 22.1 to 22.4 attempt to workaround it.
- Add a socket runs under
u:r:zygote:s0 context
to handle all file operations from zygote (Riru) - For Magisk < v21.1, reboot twice is no longer required
Riru v22 has a new hide mechanism which makes detection "not that easy".
Because of this, all modules must change. If your module hasn't updated, ask the module developer to make changes. For 99% modules, this is super easy.
Before Magisk v21.1, you have to manually reboot the device twice.
- Support custom ROMs with isTopApp changes backported (#106)
- Works on Android R DP4
- Generate a random name for libmemtrack_real to temporarily make SafetyNet happy (this can't work for long)
- Works on Android R DP3
- Works on Android R DP2
- Fix install script for x86 (#91)
- Allow uid 1000 to access
/data/misc/riru
- Support Samsung Q with "usap" enabled (this should happens only on custom ROMs?)
- Support Samsung Q
- Copy libmemtrack.so in
post-fs-data.sh
- Upgrade to the latest module format
- Verify important files on install (2019/10/29)
- Fix #58
- Fix bug
- Fix not work on Android Q Beta 5 (if "process pool" enabled)
- Remove jniRegisterNativeMethods hook when entering the app process
- Always reset module files SELinux in case
- Support Android Q Beta 3 (all modules need to be upgraded)