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

\u4F5C\u4E3A Hook API \u4F7F\u7528\u7684\u76F8\u5173\u914D\u7F6E

\u4F5C\u4E3A Hook API \u901A\u5E38\u4E3A\u505A\u81EA\u8EAB APP \u70ED\u66F4\u65B0\u6216\u529F\u80FD\u9700\u8981\u4EE5\u53CA\u4EA7\u54C1\u6D4B\u8BD5\u7684 Hook \u64CD\u4F5C\u3002

\u4F9D\u8D56\u914D\u7F6E

\u4F60\u53EA\u9700\u8981\u96C6\u6210 com.highcapable.yukihookapi:api \u4F9D\u8D56\u5373\u53EF\u3002

\u7136\u540E\u8BF7\u96C6\u6210\u4F60\u76EE\u6807\u4F7F\u7528\u7684 Hook Framework \u4F9D\u8D56\u3002

\u5165\u53E3\u914D\u7F6E

\u521B\u5EFA\u4F60\u7684\u81EA\u5B9A\u4E49 Application\u3002

\u5728 attachBaseContext \u4E2D\u6DFB\u52A0 YukiHookAPI.encase \u65B9\u6CD5\u3002

\u793A\u4F8B\u5982\u4E0B

class MyApplication : Application() {

    override fun attachBaseContext(base: Context?) {
        // \u88C5\u8F7D Hook Framework
        //
        // Your code here.
        //
        // \u914D\u7F6E YukiHookAPI
        YukiHookApi.configs {
            // Your code here.
        }
        // \u88C5\u8F7D YukiHookAPI
        YukiHookAPI.encase(base) {
            // Your code here.
        }
        super.attachBaseContext(base)
    }
}

\u8FD9\u6837\uFF0C\u4F60\u5C31\u5B8C\u6210\u4E86 API \u7684\u76F8\u5173\u914D\u7F6E\u3002

\u4F60\u53EF\u4EE5 \u70B9\u51FB\u8FD9\u91CC \u67E5\u770B\u5F02\u540C\u70B9\u548C\u6CE8\u610F\u4E8B\u9879\u3002

\u6CE8\u610F

\u4F60\u4E0D\u80FD\u518D\u4F7F\u7528 loadApp \u8FDB\u884C\u5305\u88C5\uFF0C\u53EF\u76F4\u63A5\u5F00\u59CB\u7F16\u5199\u4F60\u7684 Hook \u4EE3\u7801\u3002

Hook Framework

\u8FD9\u91CC\u7ED9\u51FA\u4E86\u4E00\u4E9B\u8F83\u9AD8\u4F7F\u7528\u7387\u7684 Hook Framework \u5982\u4F55\u5BF9\u63A5 YukiHookAPI \u7684\u76F8\u5173\u65B9\u5F0F\u3002

`,15),d={id:"pine",tabindex:"-1"},A=s("a",{class:"header-anchor",href:"#pine","aria-hidden":"true"},"#",-1),y=n(),u={href:"https://github.com/canyie/pine",target:"_blank",rel:"noopener noreferrer"},B=n("Pine"),C=o(`

\u6240\u9700 Xposed API \u4F9D\u8D56 top.canyie.pine:xposed

\u793A\u4F8B\u5982\u4E0B

override fun attachBaseContext(base: Context?) {
    // \u88C5\u8F7D Pine
    PineConfig.debug = true
    PineConfig.debuggable = BuildConfig.DEBUG
    // \u88C5\u8F7D YukiHookAPI
    YukiHookAPI.encase(base) {
        // Your code here.
    }
    super.attachBaseContext(base)
}
`,3),D={id:"sandhook",tabindex:"-1"},h=s("a",{class:"header-anchor",href:"#sandhook","aria-hidden":"true"},"#",-1),v=n(),b={href:"https://github.com/asLody/SandHook",target:"_blank",rel:"noopener noreferrer"},k=n("SandHook"),m=o(`

\u6240\u9700 Xposed API \u4F9D\u8D56 com.swift.sandhook:xposedcompat \u6216 com.swift.sandhook:xposedcompat_new

\u793A\u4F8B\u5982\u4E0B

override fun attachBaseContext(base: Context?) {
    // \u88C5\u8F7D SandHook
    SandHookConfig.DEBUG = BuildConfig.DEBUG
    XposedCompat.cacheDir = base?.cacheDir
    XposedCompat.context = base
    XposedCompat.classLoader = javaClass.classLoader
    XposedCompat.isFirstApplication = base?.processName == base?.packageName
    // \u88C5\u8F7D YukiHookAPI
    YukiHookAPI.encase(base) {
        // Your code here.
    }
    super.attachBaseContext(base)
}
`,3),F={id:"whale",tabindex:"-1"},_=s("a",{class:"header-anchor",href:"#whale","aria-hidden":"true"},"#",-1),g=n(),x={href:"https://github.com/asLody/whale",target:"_blank",rel:"noopener noreferrer"},f=n("Whale"),H=s("blockquote",null,[s("p",null,[s("strong",null,"\u6240\u9700 Xposed API \u4F9D\u8D56"),n(),s("code",null,"com.wind.xposed:xposed-on-whale")])],-1),P=n("\u8BF7\u53C2\u8003 "),I={href:"https://github.com/WindySha/xposed-hook-based-on-whale",target:"_blank",rel:"noopener noreferrer"},Y=n("xposed-hook-based-on-whale"),q=n("\u3002"),w=o(`

\u793A\u4F8B\u5982\u4E0B

override fun attachBaseContext(base: Context?) {
    // \u88C5\u8F7D Whale \u4E0D\u9700\u8981\u4EFB\u4F55\u914D\u7F6E
    // \u88C5\u8F7D YukiHookAPI
    YukiHookAPI.encase(base) {
        // Your code here.
    }
    super.attachBaseContext(base)
}
`,2);function E(X,L){const a=p("ExternalLinkIcon");return c(),r("div",null,[i,s("h3",d,[A,y,s("a",u,[B,e(a)])]),C,s("h3",D,[h,v,s("a",b,[k,e(a)])]),m,s("h3",F,[_,g,s("a",x,[f,e(a)])]),H,s("p",null,[P,s("a",I,[Y,e(a)]),q]),w])}const S=l(t,[["render",E],["__file","api-using.html.vue"]]);export{S as default};