You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
- The underlying API interface is decoupled as a whole to prepare for compatibility with more Hook Frameworks
24
+
- Move some of the functions integrated in the API to `ksp-xposed` dependencies (decoupling), and the separate introduction of `api` dependencies will no longer contain references to functions such as third-party libraries
25
+
- Documentation [Quick Start](../guide/quick-start) page added instructions on when `YukiHookAPI.Configs.isDebug` needs to be closed
26
+
- Standardize Java Primitive Types in type definitions and sync update to docs
27
+
- Java `type` adds `NumberClass` type
28
+
- Improved (Xposed) Host environment recognition
29
+
- Take over all exceptions after loading the Xposed Module, if an exception occurs, it will automatically intercept and print the error log
30
+
- Modify the `Class` that does not exist in the lower Android system version (Android 5.0) in the type definition to be an empty safe type
31
+
- Adapt and support native Xposed, the minimum recommended version is Android 7.0
32
+
- Added support for Hook entry class declared as `object` type (singleton)
33
+
- Fixed the problem that the system below Android 8 does not support the `Executable` type, causing the Hook to fail
34
+
- Fixed the problem of reporting an error when using the `Activity` proxy function for systems below Android 9 and limit the minimum supported version of this function to Android 7.0
35
+
- Added the prohibition of resource injection and `Activity` proxy function injection into the current module's own instance process to prevent problems
36
+
- Fixed a serious error that the return value of a method in the Hook process is not consistent with the target's inherited class and interface.
37
+
- Fixed the problem that the object is empty when calling `HookParam.callOriginal` and `HookParam.invokeOriginal` when the current Hook instance object is static
38
+
- Optimize the function of judging the Tai Chi activation method and update the relevant instructions of the document synchronously
39
+
- Obsolete ~~`YukiHookAPI.Status.executorName`~~, ~~`YukiHookAPI.Status.executorVersion`~~, please move to `YukiHookAPI.Status.Executor`
40
+
- Adapted the `YukiHookAPI.Status.Executor.name` name display function of some third-party Hook Frameworks
41
+
- Added `Class.extends`, `Class.implements` and other methods, which can more conveniently judge the inheritance and interface relationship of the current `Class`
42
+
- Added generic methods of the same name as `Class.toClass`, `Class.toClassOrNull` and other related methods, you can use generics to constrain the instance object type of known `Class`
43
+
- Modify the return value of the `classOf<T>` method to the generic type `T` to constrain the instance object type of the known `Class`
44
+
- Added `initialize` parameter of `Class` related extension method, which can control whether to initialize its static method block at the same time when getting `Class` object
45
+
- Added `param { ... }`, `type { ... }` and other usages in the variable, method, and construction method search functions, which can add more specific conditional judgments to the searched objects
46
+
- The `loadApp` method of `PackageParam` adds the `isExcludeSelf` parameter, which can be used to exclude Hook-related functions from injecting into the module's own instance process
47
+
- The `onAppLifecycle` method of `PackageParam` adds the `isOnFailureThrowToApp` parameter, which can directly throw the exception that occurs in the lifecycle method body to the host
48
+
- Modify `appClassLoader` in `PackageParam` to be a modifiable variable, which can dynamically set the `ClassLoader` used by the host in the Hook process
49
+
- Added `dataExtra` function in `HookParam`, which can be used to temporarily store the data in the Hook method body
50
+
- Obsolete ~~`isRunInNewXShareMode`~~, ~~`isXSharePrefsReadable`~~ in `YukiHookModulePrefs`, merged into `isPreferencesAvailable`
51
+
-`Class.allFields`, `Class.allMethods` and other related methods add the `isAccessible` parameter, which can control when the member object can be set as an accessible type
52
+
- Fixed the problem that only the last method body will be called back when receiving the same key-value data in an Activity when there are multiple hosts in `YukiHookDataChannel`
53
+
- Added `priority` parameter in `wait` and other related methods of `YukiHookDataChannel`, you can pass in `ChannelPriority` to customize the conditions for callback data results
54
+
-`YukiHookDataChannel` adds the function of automatically using `ChannelDataWrapper` type wrapper when sending data, which improves the user experience and enhances data protection
55
+
-`YukiHookDataChannel` has added the function of limiting the maximum byte size of data sent at one time to prevent the app from crashing due to excessive data
56
+
-`YukiHookDataChannel` has added the function of automatically segmenting when the sent data is too large, only supports `List`, `Map`, `Set`, `String` types
57
+
-`YukiHookLogger` adds the `contents` method and the `data` parameter of `saveToFile`, which can be passed in custom debug log data for formatting or saving to a file
58
+
- Fixed the problem that the debug log data package name processed by `YukiHookLogger` may be incorrect in the (Xposed) Host environment
59
+
- Fixed the problem that the package name may be incorrect on some systems (in some system apps) when the Xposed Module loads the Resource Hook event
- This is a major version update, please refer to [API Document](../api/home) and [Special Features](../api/special-features/reflection) for the changes and usage mentioned in the changelog
53
95
- Change the help documentation framework to [VuePress](https://v2.vuepress.vuejs.org)
0 commit comments