1.2.0
YukiHookAPI 1.2.0 Released
⚠ BREAKING CHANGES
- The license agreement has been changed from
MITtoApache-2.0, subsequent versions will be distributed under this license agreement, you should change the relevant license agreement after using this version - This is a breaking update, please refer to Migrate to YukiHookAPI 1.2.x for details
- Adapted to Android 14, thanks to BlueCat300 for PR
- Fixed
findAllInterfacesrelated issues, thanks to buffcow for PR - Fixed the delayed callback problem in the Hook process, thanks to cesaryuan for his Issue
- Added support for Resources Hook related functions, please refer to this Issue for details
- Added
YukiHookAPI.TAG - Deprecated
,YukiHookAPI.API_VERSION_NAME, merged intoYukiHookAPI.API_VERSION_CODEYukiHookAPI.VERSION - Added
YukiHookAPI.TAG - Deprecated
,YukiHookAPI.API_VERSION_NAME, merged intoYukiHookAPI.API_VERSION_CODEYukiHookAPI.VERSION - Deprecated
method inuseDangerousOperationYukiMemberHookCreator - Deprecated
function ininstanceClassYukiMemberHookCreator, it is no longer recommended - Modify
instanceClassinHookParamto be a null safe return value type - Detach all Hook objects created using
injectMembertoLegacyCreator - Modify
appClassLoaderinPackageParamto be a null safe return value type - Refactor all
logger...methods to new usageYLog - Removed the
-->style behind the print log function - Fixed and improved the problem that the module package name cannot be obtained through KSP after using
namespace - Functions such as whether to enable module activation status have now been moved to the
InjectYukiHookWithXposedannotation - Detached FreeReflection will no longer be automatically generated and will be automatically imported as a dependency
- Added a warning log that will be automatically printed when the same Hook method is repeated
- The
findClass(...)method inPackageParamis obsolete, please migrate to the"...".toClass()method - The
String.hook { ... }method inPackageParamis obsolete, and it is recommended to use a new method for Hook AppLifecyclecan now be created repeatedly in different Hookers- The old version of Hook priority writing is obsolete and migrated to
YukiHookPriority - Removed the
tagfunction in the Hook process - Refactored
remendyfunctionality in find methods, which now prints exceptions in steps - The multi-method find result type is changed from
HashSettoMutableList - Added
method(),constructor(),field()to directly obtain all object functions in the class constructor()no longer behaves likeconstructor { emptyParam() }- Added
lazyClassandlazyClassOrNullmethods to lazily loadClass
For more details, please check the changelog.
YukiHookAPI 1.2.0 已发布
⚠ 重大更新
- 许可协议由
MIT变更为Apache-2.0,在此之后的版本将由此许可协议进行分发,您在使用此版本后应变更相关许可协议 - 这是一次重大更新,详情请参考 迁移到 YukiHookAPI 1.2.x
- 适配 Android 14,感谢 BlueCat300 的 PR
- 修复
findAllInterfaces相关问题,感谢 buffcow 的 PR - 修复 Hook 过程中的延迟回调问题,感谢 cesaryuan 的 Issue
- 新增 Resources Hook 相关功能支持,详情请参考这个 Issue
- 新增
YukiHookAPI.TAG - 作废了
、YukiHookAPI.API_VERSION_NAME,统一合并到YukiHookAPI.API_VERSION_CODEYukiHookAPI.VERSION - 作废了
中的YukiMemberHookCreator方法useDangerousOperation - 作废了
中的YukiMemberHookCreator功能,不再推荐使用instanceClass - 修改
HookParam中的instanceClass为空安全返回值类型 - 分离全部使用
injectMember创建的 Hook 对象到LegacyCreator - 修改
PackageParam中的appClassLoader为空安全返回值类型 - 重构全部
logger...方法到新用法YLog - 移除了打印日志功能后方的
-->样式 - 修复并改进在使用
namespace后通过 KSP 无法获取模块包名的问题 - 是否启用模块激活状态等功能现已移动到
InjectYukiHookWithXposed注解中 - 分离 FreeReflection 不再自动生成,将作为依赖自动导入
- 新增重复 Hook 同一个方法时将自动打印警告日志
- 作废了
PackageParam中的findClass(...)方法,请迁移到"...".toClass()方法 - 作废了
PackageParam中的String.hook { ... }方法,推荐使用新方式进行 Hook AppLifecycle现在可以在不同 Hooker 中重复创建- 作废了旧版 Hook 优先级写法,统一迁移到
YukiHookPriority - 移除了 Hook 过程中的
tag功能 - 重构方法查找中的
remendy功能,现在可以对其进行分步打印异常 - 多重方法查找结果类型由
HashSet改为MutableList - 新增使用
method()、constructor()、field()可直接获取到类中的所有对象功能 constructor()的行为不再是constructor { emptyParam() }- 新增
lazyClass、lazyClassOrNull方法,可延迟装载Class
详情请查看更新日志。