YukiHookAPI 1.2.0 Released
⚠ BREAKING CHANGES
- The license agreement has been changed from
MIT
toApache-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
findAllInterfaces
related 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_CODE
YukiHookAPI.VERSION
- Added
YukiHookAPI.TAG
- Deprecated
,YukiHookAPI.API_VERSION_NAME
, merged intoYukiHookAPI.API_VERSION_CODE
YukiHookAPI.VERSION
- Deprecated
method inuseDangerousOperation
YukiMemberHookCreator
- Deprecated
function ininstanceClass
YukiMemberHookCreator
, it is no longer recommended - Modify
instanceClass
inHookParam
to be a null safe return value type - Detach all Hook objects created using
injectMember
toLegacyCreator
- Modify
appClassLoader
inPackageParam
to 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
InjectYukiHookWithXposed
annotation - 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 inPackageParam
is obsolete, please migrate to the"...".toClass()
method - The
String.hook { ... }
method inPackageParam
is obsolete, and it is recommended to use a new method for Hook AppLifecycle
can now be created repeatedly in different Hookers- The old version of Hook priority writing is obsolete and migrated to
YukiHookPriority
- Removed the
tag
function in the Hook process - Refactored
remendy
functionality in find methods, which now prints exceptions in steps - The multi-method find result type is changed from
HashSet
toMutableList
- Added
method()
,constructor()
,field()
to directly obtain all object functions in the class constructor()
no longer behaves likeconstructor { emptyParam() }
- Added
lazyClass
andlazyClassOrNull
methods 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_CODE
YukiHookAPI.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
详情请查看更新日志。