import{_ as s,o as n,c as o,a}from"./app.78a03919.js";const e={},l=a(`

Notice

The English translation of this page has not been completed, you are welcome to contribute translations to us.

You can use the Chrome Translation Plugin to translate entire pages for reference.

YukiHookAPI - object

object YukiHookAPI

Change Records

v1.0 first

Function Illustrate

\u8FD9\u662F YukiHookAPI \u7684 API \u8C03\u7528\u603B\u7C7B\uFF0CHook \u76F8\u5173\u529F\u80FD\u7684\u5F00\u59CB\u3001Hook \u76F8\u5173\u529F\u80FD\u7684\u914D\u7F6E\u90FD\u5728\u8FD9\u91CC\u3002

API_VERSION_NAME - field

const val API_VERSION_NAME: String

Change Records

v1.0.4 added

Function Illustrate

\u83B7\u53D6\u5F53\u524D YukiHookAPI \u7684\u7248\u672C\u3002

API_VERSION_CODE - field

const val API_VERSION_CODE: Int

Change Records

v1.0.4 added

Function Illustrate

\u83B7\u53D6\u5F53\u524D YukiHookAPI \u7684\u7248\u672C\u53F7\u3002

executorName - field

Change Records

v1.0.5 added

v1.0.91 removed

\u8BF7\u8F6C\u79FB\u5230 Status.executorName

executorVersion - field

Change Records

v1.0.5 added

v1.0.91 removed

\u8BF7\u8F6C\u79FB\u5230 Status.executorVersion

Status - object

object Status

Change Records

v1.0.91 added

Function Illustrate

\u5F53\u524D YukiHookAPI \u7684\u72B6\u6001\u3002

compiledTimestamp - field

val compiledTimestamp: Long

Change Records

v1.1.0 added

Function Illustrate

\u83B7\u53D6\u9879\u76EE\u7F16\u8BD1\u5B8C\u6210\u7684\u65F6\u95F4\u6233 (\u5F53\u524D\u672C\u5730\u65F6\u95F4)\u3002

isXposedEnvironment - field

val isXposedEnvironment: Boolean

Change Records

v1.1.0 added

Function Illustrate

\u83B7\u53D6\u5F53\u524D\u662F\u5426\u4E3A (Xposed) \u5BBF\u4E3B\u73AF\u5883\u3002

executorName - field

val executorName: String

Change Records

v1.0.91 added

Function Illustrate

\u83B7\u53D6\u5F53\u524D Hook \u6846\u67B6\u7684\u540D\u79F0\u3002

\u65E0\u6CD5\u83B7\u53D6\u4F1A\u8FD4\u56DE unknown\uFF0CXposedBridge \u4E0D\u5B58\u5728\u4F1A\u8FD4\u56DE invalid\u3002

Notice

\u5728\u6A21\u5757\u73AF\u5883\u4E2D\u9700\u8981\u542F\u7528 Configs.isEnableHookModuleStatus\u3002

executorVersion - field

val executorVersion: Int

Change Records

v1.0.91 added

Function Illustrate

\u83B7\u53D6\u5F53\u524D Hook \u6846\u67B6\u7684\u7248\u672C\u3002

\u65E0\u6CD5\u83B7\u53D6\u4F1A\u8FD4\u56DE -1\u3002

Notice

\u5728\u6A21\u5757\u73AF\u5883\u4E2D\u9700\u8981\u542F\u7528 Configs.isEnableHookModuleStatus\u3002

isModuleActive - field

val isModuleActive: Boolean

Change Records

v1.0.91 added

Function Illustrate

\u5224\u65AD\u6A21\u5757\u662F\u5426\u5728 Xposed \u6216\u592A\u6781\u3001\u65E0\u6781\u4E2D\u6FC0\u6D3B\u3002

Notice

\u5728\u6A21\u5757\u73AF\u5883\u4E2D\u4F60\u9700\u8981\u5C06 Application \u7EE7\u627F\u4E8E ModuleApplication\u3002

\u5728\u6A21\u5757\u73AF\u5883\u4E2D\u9700\u8981\u542F\u7528 Configs.isEnableHookModuleStatus\u3002

\u5728 (Xposed) \u5BBF\u4E3B\u73AF\u5883\u4E2D\u4EC5\u8FD4\u56DE\u975E isTaiChiModuleActive \u7684\u6FC0\u6D3B\u72B6\u6001\u3002

isXposedModuleActive - field

val isXposedModuleActive: Boolean

Change Records

v1.0.91 added

Function Illustrate

\u4EC5\u5224\u65AD\u6A21\u5757\u662F\u5426\u5728 Xposed \u4E2D\u6FC0\u6D3B\u3002

Notice

\u5728\u6A21\u5757\u73AF\u5883\u4E2D\u9700\u8981\u542F\u7528 Configs.isEnableHookModuleStatus\u3002

\u5728 (Xposed) \u5BBF\u4E3B\u73AF\u5883\u4E2D\u59CB\u7EC8\u8FD4\u56DE true\u3002

isTaiChiModuleActive - field

val isTaiChiModuleActive: Boolean

Change Records

v1.0.91 added

Function Illustrate

\u4EC5\u5224\u65AD\u6A21\u5757\u662F\u5426\u5728\u592A\u6781\u3001\u65E0\u6781\u4E2D\u6FC0\u6D3B\u3002

Notice

\u5728\u6A21\u5757\u73AF\u5883\u4E2D\u4F60\u9700\u8981\u5C06 Application \u7EE7\u627F\u4E8E ModuleApplication\u3002

\u5728 (Xposed) \u5BBF\u4E3B\u73AF\u5883\u4E2D\u59CB\u7EC8\u8FD4\u56DE false\u3002

isSupportResourcesHook - field

val isSupportResourcesHook: Boolean

Change Records

v1.0.91 added

Function Illustrate

\u5224\u65AD\u5F53\u524D Hook Framework \u662F\u5426\u652F\u6301\u8D44\u6E90\u94A9\u5B50(Resources Hook)\u3002

Notice

\u5728\u6A21\u5757\u73AF\u5883\u4E2D\u9700\u8981\u542F\u7528 Configs.isEnableHookModuleStatus\u3002

\u5728 (Xposed) \u5BBF\u4E3B\u73AF\u5883\u4E2D\u53EF\u80FD\u4F1A\u5EF6\u8FDF\u7B49\u5F85\u4E8B\u4EF6\u56DE\u8C03\u540E\u624D\u4F1A\u8FD4\u56DE true\u3002

\u8BF7\u6CE8\u610F\u4F60\u9700\u8981\u786E\u4FDD InjectYukiHookWithXposed.isUsingResourcesHook \u5DF2\u542F\u7528\uFF0C\u5426\u5219\u59CB\u7EC8\u8FD4\u56DE false\u3002

Configs - object

object Configs

Change Records

v1.0 first

Function Illustrate

\u5BF9 API \u76F8\u5173\u529F\u80FD\u7684\u914D\u7F6E\u7C7B\u3002

debugLog - method

inline fun debugLog(initiate: YukiHookLogger.Configs.() -> Unit)

Change Records

v1.1.0 added

Function Illustrate

\u914D\u7F6E YukiHookLogger.Configs \u76F8\u5173\u53C2\u6570\u3002

debugTag - field

Change Records

v1.0 first

v1.1.0 deprecated

\u8BF7\u8F6C\u79FB\u5230 YukiHookLogger.Configs.tag

isDebug - field

var isDebug: Boolean

Change Records

v1.0 first

Function Illustrate

\u662F\u5426\u542F\u7528 DEBUG \u6A21\u5F0F\u3002

\u9ED8\u8BA4\u4E3A\u5F00\u542F\u72B6\u6001\uFF0C\u5F00\u542F\u540E\u6A21\u5757\u5C06\u4F1A\u5411 Logcat \u548C XposedBridge.log \u6253\u5370\u8BE6\u7EC6\u7684 Hook \u65E5\u5FD7\uFF0C\u5173\u95ED\u540E\u4EC5\u4F1A\u6253\u5370 E \u7EA7\u522B\u7684\u65E5\u5FD7\u3002

isAllowPrintingLogs - field

Change Records

v1.0.4 added

v1.1.0 deprecated

\u8BF7\u8F6C\u79FB\u5230 YukiHookLogger.Configs.isEnable

isEnableModulePrefsCache - field

var isEnableModulePrefsCache: Boolean

Change Records

v1.0.5 added

Function Illustrate

\u662F\u5426\u542F\u7528 YukiHookModulePrefs \u7684\u952E\u503C\u7F13\u5B58\u529F\u80FD\u3002

\u4E3A\u9632\u6B62\u5185\u5B58\u590D\u7528\u8FC7\u9AD8\u95EE\u9898\uFF0C\u6B64\u529F\u80FD\u9ED8\u8BA4\u542F\u7528\u3002

\u4F60\u53EF\u4EE5\u624B\u52A8\u5728 YukiHookModulePrefs \u4E2D\u81EA\u7531\u5F00\u542F\u548C\u5173\u95ED\u7F13\u5B58\u529F\u80FD\u4EE5\u53CA\u6E05\u9664\u7F13\u5B58\u3002

isEnableModuleAppResourcesCache - field

var isEnableModuleAppResourcesCache: Boolean

Change Records

v1.0.87 added

Function Illustrate

\u662F\u5426\u542F\u7528\u5F53\u524D Xposed \u6A21\u5757\u81EA\u8EAB Resources \u7F13\u5B58\u529F\u80FD\u3002

\u4E3A\u9632\u6B62\u5185\u5B58\u590D\u7528\u8FC7\u9AD8\u95EE\u9898\uFF0C\u6B64\u529F\u80FD\u9ED8\u8BA4\u542F\u7528\u3002

\u4F60\u53EF\u4EE5\u624B\u52A8\u8C03\u7528 PackageParam.refreshModuleAppResources \u6765\u5237\u65B0\u7F13\u5B58\u3002

Notice

\u5173\u95ED\u540E\u6BCF\u6B21\u4F7F\u7528 PackageParam.moduleAppResources \u90FD\u4F1A\u91CD\u65B0\u521B\u5EFA\uFF0C\u53EF\u80FD\u4F1A\u9020\u6210\u8FD0\u884C\u7F13\u6162\u3002

isEnableHookModuleStatus - field

var isEnableHookModuleStatus: Boolean

Change Records

v1.0.88 added

Function Illustrate

\u662F\u5426\u542F\u7528 Hook Xposed \u6A21\u5757\u6FC0\u6D3B\u7B49\u72B6\u6001\u529F\u80FD.

\u4E3A\u539F\u751F\u652F\u6301 Xposed \u6A21\u5757\u6FC0\u6D3B\u72B6\u6001\u68C0\u6D4B\uFF0C\u6B64\u529F\u80FD\u9ED8\u8BA4\u542F\u7528\u3002

Notice

\u5173\u95ED\u540E\u4F60\u5C06\u4E0D\u80FD\u518D\u5728\u6A21\u5757\u73AF\u5883\u4E2D\u4F7F\u7528 YukiHookAPI.Status \u4E2D\u7684\u6FC0\u6D3B\u72B6\u6001\u5224\u65AD\u529F\u80FD\u3002

isEnableHookSharedPreferences - field

var isEnableHookSharedPreferences: Boolean

Change Records

v1.1.0 added

Function Illustrate

\u662F\u5426\u542F\u7528 Hook SharedPreferences\u3002

\u542F\u7528\u540E\u5C06\u5728\u6A21\u5757\u542F\u52A8\u65F6\u5F3A\u5236\u5C06 SharedPreferences \u6587\u4EF6\u6743\u9650\u8C03\u6574\u4E3A Context.MODE_WORLD_READABLE (0664)\u3002

Notice

\u8FD9\u662F\u4E00\u4E2A\u53EF\u9009\u7684\u5B9E\u9A8C\u6027\u529F\u80FD\uFF0C\u6B64\u529F\u80FD\u9ED8\u8BA4\u4E0D\u542F\u7528\u3002

\u4EC5\u7528\u4E8E\u4FEE\u590D\u67D0\u4E9B\u7CFB\u7EDF\u53EF\u80FD\u4F1A\u51FA\u73B0\u5728\u542F\u7528\u4E86 New XSharedPreferences \u540E\u4F9D\u7136\u51FA\u73B0\u6587\u4EF6\u6743\u9650\u9519\u8BEF\u95EE\u9898\uFF0C\u82E5\u4F60\u80FD\u6B63\u5E38\u4F7F\u7528 YukiHookModulePrefs \u5C31\u4E0D\u5EFA\u8BAE\u542F\u7528\u6B64\u529F\u80FD\u3002

isEnableDataChannel - field

var isEnableDataChannel: Boolean

Change Records

v1.0.88 added

Function Illustrate

\u662F\u5426\u542F\u7528\u5F53\u524D Xposed \u6A21\u5757\u4E0E\u5BBF\u4E3B\u4EA4\u4E92\u7684 YukiHookDataChannel \u529F\u80FD\u3002

\u8BF7\u786E\u4FDD Xposed \u6A21\u5757\u7684 Application \u7EE7\u627F\u4E8E ModuleApplication \u624D\u80FD\u6709\u6548\u3002

\u6B64\u529F\u80FD\u9ED8\u8BA4\u542F\u7528\uFF0C\u5173\u95ED\u540E\u5C06\u4E0D\u4F1A\u5728\u529F\u80FD\u521D\u59CB\u5316\u7684\u65F6\u5019\u88C5\u8F7D YukiHookDataChannel\u3002

isEnableMemberCache - field

var isEnableMemberCache: Boolean

Change Records

v1.0.68 added

v1.0.80 modified

\u5C06\u65B9\u6CD5\u4F53\u8FDB\u884C inline

Function Illustrate

\u662F\u5426\u542F\u7528 Member \u7F13\u5B58\u529F\u80FD\u3002

\u4E3A\u9632\u6B62 Member \u590D\u7528\u8FC7\u9AD8\u9020\u6210\u7684\u7CFB\u7EDF GC \u95EE\u9898\uFF0C\u6B64\u529F\u80FD\u9ED8\u8BA4\u542F\u7528\u3002

\u542F\u7528\u540E\u4F1A\u7F13\u5B58\u5DF2\u7ECF\u627E\u5230\u7684 Method\u3001Constructor\u3001Field\u3002

\u7F13\u5B58\u7684 Member \u90FD\u5C06\u5904\u4E8E MemberCacheStore \u7684\u5168\u5C40\u9759\u6001\u5B9E\u4F8B\u4E2D\u3002

\u63A8\u8350\u4F7F\u7528 MethodFinder\u3001ConstructorFinder\u3001FieldFinder \u6765\u83B7\u53D6 Member\u3002

\u9664\u975E\u7F13\u5B58\u7684 Member \u53D1\u751F\u4E86\u6DF7\u6DC6\u7684\u95EE\u9898\uFF0C\u4F8B\u5982\u4F7F\u7528 R8 \u6DF7\u6DC6\u540E\u7684 APP \u7684\u76EE\u6807 Member\uFF0C\u5426\u5219\u5EFA\u8BAE\u542F\u7528\u3002

configs - method

inline fun configs(initiate: Configs.() -> Unit)

Change Records

v1.0 first

Function Illustrate

\u5BF9 Configs \u7C7B\u5B9E\u73B0\u4E86\u4E00\u4E2A lambda \u65B9\u6CD5\u4F53\u3002

\u4F60\u53EF\u4EE5\u8F7B\u677E\u7684\u8C03\u7528\u5B83\u8FDB\u884C\u914D\u7F6E\u3002

Function Example

\u4F60\u53EF\u4EE5\u5728 HookEntryClass \u7684 onInit \u65B9\u6CD5\u4E2D\u8C03\u7528 configs \u65B9\u6CD5\u548C debugLog \u65B9\u6CD5\u5B8C\u6210\u5BF9 API \u7684\u529F\u80FD\u914D\u7F6E\uFF0C\u5B9E\u65F6\u751F\u6548\u3002

The following example

class HookEntryClass : IYukiHookXposedInit {

    override fun onInit() {
        YukiHookAPI.configs {
            debugLog {
                tag = "YukiHookAPI"
                isEnable = true
                isRecord = false
                elements(TAG, PRIORITY, PACKAGE_NAME, USER_ID)
            }
            isDebug = BuildConfig.DEBUG
            isEnableModulePrefsCache = true
            isEnableModuleAppResourcesCache = true
            isEnableHookModuleStatus = true
            isEnableHookSharedPreferences = false
            isEnableDataChannel = true
            isEnableMemberCache = true
        }
    }

    override fun onHook() {
        // Your code here.
    }
}

\u82E5\u89C9\u5F97\u4E0A\u9762\u7684\u5199\u6CD5\u4E0D\u7F8E\u89C2\uFF0C\u4F60\u8FD8\u53EF\u4EE5\u5199\u5F97\u66F4\u52A0\u7B80\u6D01\u3002

The following example

class HookEntryClass : IYukiHookXposedInit {

    override fun onInit() = configs {
        debugLog {
            tag = "YukiHookAPI"
            isEnable = true
            isRecord = false
            elements(TAG, PRIORITY, PACKAGE_NAME, USER_ID)
        }
        isDebug = BuildConfig.DEBUG
        isEnableModulePrefsCache = true
        isEnableModuleAppResourcesCache = true
        isEnableHookModuleStatus = true
        isEnableHookSharedPreferences = false
        isEnableDataChannel = true
        isEnableMemberCache = true
    }

    override fun onHook() {
        // Your code here.
    }
}

\u4F60\u4E5F\u53EF\u4EE5\u4E0D\u901A\u8FC7 configs \u548C debugLog \u65B9\u6CD5\uFF0C\u76F4\u63A5\u8FDB\u884C\u914D\u7F6E\u3002

The following example

class HookEntryClass : IYukiHookXposedInit {

    override fun onInit() {
        YukiHookLogger.Configs.tag = "YukiHookAPI"
        YukiHookLogger.Configs.isEnable = true
        YukiHookLogger.Configs.isRecord = false
        YukiHookLogger.Configs.elements(
            YukiHookLogger.Configs.TAG,
            YukiHookLogger.Configs.PRIORITY,
            YukiHookLogger.Configs.PACKAGE_NAME,
            YukiHookLogger.Configs.USER_ID
        )
        YukiHookAPI.Configs.isDebug = BuildConfig.DEBUG
        YukiHookAPI.Configs.isEnableModulePrefsCache = true
        YukiHookAPI.Configs.isEnableModuleAppResourcesCache = true
        YukiHookAPI.Configs.isEnableHookModuleStatus = true
        YukiHookAPI.Configs.isEnableHookSharedPreferences = false
        YukiHookAPI.Configs.isEnableDataChannel = true
        YukiHookAPI.Configs.isEnableMemberCache = true
    }

    override fun onHook() {
        // Your code here.
    }
}

encase - method

fun encase(initiate: PackageParam.() -> Unit)
fun encase(vararg hooker: YukiBaseHooker)
fun encase(baseContext: Context?, initiate: PackageParam.() -> Unit)
fun encase(baseContext: Context?, vararg hooker: YukiBaseHooker)

Change Records

v1.0 first

Function Illustrate

\u88C5\u8F7D Hook \u5165\u53E3\u7684\u6838\u5FC3\u65B9\u6CD5\u3002

Function Example

\u8BE6\u60C5\u8BF7\u53C2\u8003

`,203),p=[l];function c(r,t){return n(),o("div",null,p)}const d=s(e,[["render",c],["__file","YukiHookAPI.html.vue"]]);export{d as default};