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

YukiHookPrefsBridge - class

class YukiHookPrefsBridge private constructor(private var context: Context?)

\u53D8\u66F4\u8BB0\u5F55

v1.0 \u6DFB\u52A0

v1.1.9 \u4FEE\u6539

YukiHookModulePrefs \u66F4\u540D\u4E3A YukiHookPrefsBridge

\u529F\u80FD\u63CF\u8FF0

YukiHookAPI \u5BF9 SharedPreferences\u3001XSharedPreferences \u7684\u6269\u5C55\u5B58\u50A8\u6865\u5B9E\u73B0\u3002

\u5728\u4E0D\u540C\u73AF\u5883\u667A\u80FD\u9009\u62E9\u5B58\u53D6\u4F7F\u7528\u7684\u5BF9\u8C61\u3002

\u7279\u522B\u6CE8\u610F

\u6A21\u5757\u4E0E\u5BBF\u4E3B\u4E4B\u524D\u5171\u4EAB\u6570\u636E\u5B58\u50A8\u4E3A\u5B9E\u9A8C\u6027\u529F\u80FD\uFF0C\u4EC5\u5728 LSPosed \u73AF\u5883\u6D4B\u8BD5\u901A\u8FC7\uFF0CEdXposed \u7406\u8BBA\u4E5F\u53EF\u4EE5\u4F7F\u7528\u4F46\u4E0D\u518D\u63A8\u8350\u3002

\u4F7F\u7528 LSPosed \u73AF\u5883\u8BF7\u5728 AndroidManifests.xml \u4E2D\u5C06 xposedminversion \u6700\u4F4E\u8BBE\u7F6E\u4E3A 93\u3002

`,11),i=s("\u8BE6\u89C1 "),y={href:"https://github.com/LSPosed/LSPosed/wiki/New-XSharedPreferences#for-the-module",target:"_blank",rel:"noopener noreferrer"},g=s("New XSharedPreferences"),h=s("\u3002"),A=o("p",null,[s("\u82E5\u4F60\u5728\u6309\u7167\u89C4\u5B9A\u914D\u7F6E\u540E\u4F9D\u7136\u65E0\u6CD5\u4F7F\u7528\u6216\u51FA\u73B0\u6587\u4EF6\u6743\u9650\u9519\u8BEF\u95EE\u9898\uFF0C\u53EF\u4EE5\u53C2\u8003 "),o("a",{href:"../../../YukiHookAPI#isenablehooksharedpreferences-field"},"isEnableHookSharedPreferences"),s("\u3002")],-1),B=o("p",null,[s("\u672A\u4F7F\u7528 LSPosed \u73AF\u5883\u8BF7\u5C06\u4F60\u7684\u6A21\u5757 "),o("code",null,"API"),s(" \u964D\u81F3 "),o("code",null,"26"),s(" \u4EE5\u4E0B\uFF0C"),o("code",null,"YukiHookAPI"),s(" \u5C06\u4F1A\u5C1D\u8BD5\u4F7F\u7528 "),o("code",null,"makeWorldReadable"),s(" \u4F46\u4ECD\u6709\u53EF\u80FD\u4E0D\u6210\u529F\u3002")],-1),u=s("\u592A\u6781\u8BF7\u53C2\u9605 "),D={href:"https://taichi.cool/zh/doc/for-xposed-dev.html#%E6%96%87%E4%BB%B6%E6%9D%83%E9%99%90-%E9%85%8D%E7%BD%AE-xsharedpreference",target:"_blank",rel:"noopener noreferrer"},F=s("\u6587\u4EF6\u6743\u9650/\u914D\u7F6E/XSharedPreference"),C=s("\u3002"),k=n("

\u5BF9\u4E8E\u5728\u6A21\u5757\u73AF\u5883\u4E2D\u4F7F\u7528 PreferenceFragmentCompat\uFF0CYukiHookAPI \u63D0\u4F9B\u4E86 ModulePreferenceFragment \u6765\u5B9E\u73B0\u540C\u6837\u7684\u529F\u80FD\u3002

\u53EF\u9009\u914D\u7F6E

\u82E5\u4F60\u4E0D\u60F3\u5C06\u4F60\u7684\u6A21\u5757\u7684 xposedminversion \u6700\u4F4E\u8BBE\u7F6E\u4E3A 93\uFF0C\u4F60\u53EF\u4EE5\u5728 AndroidManifest.xml \u4E2D\u6DFB\u52A0 xposedsharedprefs \u6765\u5B9E\u73B0\u652F\u6301\u3002

",3),m=s("\u8BE6\u89C1 "),v={href:"https://github.com/LSPosed/LSPosed/wiki/New-XSharedPreferences#for-the-module",target:"_blank",rel:"noopener noreferrer"},b=s("New XSharedPreferences"),f=s("\u3002"),x=n(`

\u793A\u4F8B\u5982\u4E0B

<meta-data
    android:name="xposedsharedprefs"
    android:value="true"/>

isXSharePrefsReadable - field

\u53D8\u66F4\u8BB0\u5F55

v1.0.90 \u65B0\u589E

v1.1.5 \u4F5C\u5E9F

\u8BF7\u8F6C\u79FB\u5230 isPreferencesAvailable

isRunInNewXShareMode - field

\u53D8\u66F4\u8BB0\u5F55

v1.0.78 \u65B0\u589E

v1.1.5 \u4F5C\u5E9F

\u8BF7\u8F6C\u79FB\u5230 isPreferencesAvailable

isPreferencesAvailable - field

val isPreferencesAvailable: Boolean

\u53D8\u66F4\u8BB0\u5F55

v1.1.5 \u65B0\u589E

\u529F\u80FD\u63CF\u8FF0

\u83B7\u53D6\u5F53\u524D YukiHookPrefsBridge \u7684\u53EF\u7528\u72B6\u6001\u3002

\u5728 (Xposed) \u5BBF\u4E3B\u73AF\u5883\u4E2D\u8FD4\u56DE XSharedPreferences \u53EF\u7528\u72B6\u6001 (\u53EF\u8BFB)\u3002

\u5728\u6A21\u5757\u73AF\u5883\u4E2D\u8FD4\u56DE\u5F53\u524D\u662F\u5426\u5904\u4E8E New XSharedPreferences \u6A21\u5F0F (\u53EF\u8BFB\u53EF\u5199)\u3002

name - method

fun name(name: String): YukiHookPrefsBridge

\u53D8\u66F4\u8BB0\u5F55

v1.0 \u6DFB\u52A0

\u529F\u80FD\u63CF\u8FF0

\u81EA\u5B9A\u4E49 Sp \u5B58\u50A8\u540D\u79F0\u3002

\u529F\u80FD\u793A\u4F8B

\u5728 Activity \u4E2D\u7684\u4F7F\u7528\u65B9\u6CD5\u3002

\u793A\u4F8B\u5982\u4E0B

prefs("custom_name").getString("custom_key")

\u5728 (Xposed) \u5BBF\u4E3B\u73AF\u5883 PackageParam \u4E2D\u7684\u4F7F\u7528\u65B9\u6CD5\u3002

\u793A\u4F8B\u5982\u4E0B

prefs("custom_name").getString("custom_key")

direct - method

\u53D8\u66F4\u8BB0\u5F55

v1.0.5 \u65B0\u589E

v1.1.11 \u4F5C\u5E9F

\u952E\u503C\u7684\u76F4\u63A5\u7F13\u5B58\u529F\u80FD\u5DF2\u88AB\u79FB\u9664\uFF0C\u56E0\u4E3A\u5176\u5B58\u5728\u5185\u5B58\u6EA2\u51FA (OOM) \u95EE\u9898

native - method

fun native(): YukiHookPrefsBridge

\u53D8\u66F4\u8BB0\u5F55

v1.1.9 \u65B0\u589E

\u529F\u80FD\u63CF\u8FF0

\u5FFD\u7565\u5F53\u524D\u73AF\u5883\u76F4\u63A5\u4F7F\u7528 Context.getSharedPreferences \u5B58\u53D6\u6570\u636E\u3002

getString - method

fun getString(key: String, value: String): String

\u53D8\u66F4\u8BB0\u5F55

v1.0 \u6DFB\u52A0

\u529F\u80FD\u63CF\u8FF0

\u83B7\u53D6 String \u952E\u503C\u3002

getStringSet - method

fun getStringSet(key: String, value: Set<String>): Set<String>

\u53D8\u66F4\u8BB0\u5F55

v1.0.77 \u65B0\u589E

\u529F\u80FD\u63CF\u8FF0

\u83B7\u53D6 Set<String> \u952E\u503C\u3002

getBoolean - method

fun getBoolean(key: String, value: Boolean): Boolean

\u53D8\u66F4\u8BB0\u5F55

v1.0 \u6DFB\u52A0

\u529F\u80FD\u63CF\u8FF0

\u83B7\u53D6 Boolean \u952E\u503C\u3002

getInt - method

fun getInt(key: String, value: Int): Int

\u53D8\u66F4\u8BB0\u5F55

v1.0 \u6DFB\u52A0

\u529F\u80FD\u63CF\u8FF0

\u83B7\u53D6 Int \u952E\u503C\u3002

getLong - method

fun getLong(key: String, value: Long): Long

\u53D8\u66F4\u8BB0\u5F55

v1.0 \u6DFB\u52A0

\u529F\u80FD\u63CF\u8FF0

\u83B7\u53D6 Long \u952E\u503C\u3002

getFloat - method

fun getFloat(key: String, value: Float): Float

\u53D8\u66F4\u8BB0\u5F55

v1.0 \u6DFB\u52A0

\u529F\u80FD\u63CF\u8FF0

\u83B7\u53D6 Float \u952E\u503C\u3002

contains - method

fun contains(key: String): Boolean

\u53D8\u66F4\u8BB0\u5F55

v1.1.9 \u65B0\u589E

\u529F\u80FD\u63CF\u8FF0

\u5224\u65AD\u5F53\u524D\u662F\u5426\u5305\u542B key \u952E\u503C\u7684\u6570\u636E\u3002

\u667A\u80FD\u8BC6\u522B\u5BF9\u5E94\u73AF\u5883\u8BFB\u53D6\u952E\u503C\u6570\u636E\u3002

all - method

fun all(): HashMap<String, Any?>

\u53D8\u66F4\u8BB0\u5F55

v1.0.77 \u65B0\u589E

\u529F\u80FD\u63CF\u8FF0

\u83B7\u53D6\u5168\u90E8\u5B58\u50A8\u7684\u952E\u503C\u6570\u636E\u3002

\u667A\u80FD\u8BC6\u522B\u5BF9\u5E94\u73AF\u5883\u8BFB\u53D6\u952E\u503C\u6570\u636E\u3002

\u7279\u522B\u6CE8\u610F

\u6BCF\u6B21\u8C03\u7528\u90FD\u4F1A\u83B7\u53D6\u5B9E\u65F6\u7684\u6570\u636E\uFF0C\u4E0D\u53D7\u7F13\u5B58\u63A7\u5236\uFF0C\u8BF7\u52FF\u5728\u9AD8\u5E76\u53D1\u573A\u666F\u4E2D\u4F7F\u7528\u3002

remove - method

\u53D8\u66F4\u8BB0\u5F55

v1.0 \u6DFB\u52A0

v1.1.9 \u4F5C\u5E9F

\u8BF7\u8F6C\u79FB\u5230 edit \u65B9\u6CD5

clear - method

\u53D8\u66F4\u8BB0\u5F55

v1.0.77 \u65B0\u589E

v1.1.9 \u4F5C\u5E9F

\u8BF7\u8F6C\u79FB\u5230 edit \u65B9\u6CD5

putString - method

\u53D8\u66F4\u8BB0\u5F55

v1.0 \u6DFB\u52A0

v1.1.9 \u4F5C\u5E9F

\u8BF7\u8F6C\u79FB\u5230 edit \u65B9\u6CD5

putStringSet - method

\u53D8\u66F4\u8BB0\u5F55

v1.0.77 \u65B0\u589E

v1.1.9 \u4F5C\u5E9F

\u8BF7\u8F6C\u79FB\u5230 edit \u65B9\u6CD5

putBoolean - method

\u53D8\u66F4\u8BB0\u5F55

v1.0 \u6DFB\u52A0

v1.1.9 \u4F5C\u5E9F

\u8BF7\u8F6C\u79FB\u5230 edit \u65B9\u6CD5

putInt - method

\u53D8\u66F4\u8BB0\u5F55

v1.0 \u6DFB\u52A0

v1.1.9 \u4F5C\u5E9F

\u8BF7\u8F6C\u79FB\u5230 edit \u65B9\u6CD5

putLong - method

\u53D8\u66F4\u8BB0\u5F55

v1.0 \u6DFB\u52A0

v1.1.9 \u4F5C\u5E9F

\u8BF7\u8F6C\u79FB\u5230 edit \u65B9\u6CD5

putFloat - method

\u53D8\u66F4\u8BB0\u5F55

v1.0 \u6DFB\u52A0

v1.1.9 \u4F5C\u5E9F

\u8BF7\u8F6C\u79FB\u5230 edit \u65B9\u6CD5

get - method

inline fun <reified T> get(prefs: PrefsData<T>, value: T): T

\u53D8\u66F4\u8BB0\u5F55

v1.0.67 \u65B0\u589E

\u529F\u80FD\u63CF\u8FF0

\u667A\u80FD\u83B7\u53D6\u6307\u5B9A\u7C7B\u578B\u7684\u952E\u503C\u3002

put - method

\u53D8\u66F4\u8BB0\u5F55

v1.0.67 \u65B0\u589E

v1.1.9 \u4F5C\u5E9F

\u8BF7\u8F6C\u79FB\u5230 edit \u65B9\u6CD5

edit - method

fun edit(): Editor

\u53D8\u66F4\u8BB0\u5F55

v1.1.9 \u65B0\u589E

\u529F\u80FD\u63CF\u8FF0

\u521B\u5EFA\u65B0\u7684 Editor\u3002

\u5728\u6A21\u5757\u73AF\u5883\u4E2D\u6216\u542F\u7528\u4E86 isUsingNativeStorage \u540E\u4F7F\u7528\u3002

\u6CE8\u610F

\u5728 (Xposed) \u5BBF\u4E3B\u73AF\u5883\u4E0B\u53EA\u8BFB\uFF0C\u65E0\u6CD5\u4F7F\u7528\u3002

edit - method

fun edit(initiate: Editor.() -> Unit)

\u53D8\u66F4\u8BB0\u5F55

v1.1.9 \u65B0\u589E

\u529F\u80FD\u63CF\u8FF0

\u521B\u5EFA\u65B0\u7684 Editor\u3002

\u81EA\u52A8\u8C03\u7528 Editor.apply \u65B9\u6CD5\u3002

\u5728\u6A21\u5757\u73AF\u5883\u4E2D\u6216\u542F\u7528\u4E86 isUsingNativeStorage \u540E\u4F7F\u7528\u3002

\u6CE8\u610F

\u5728 (Xposed) \u5BBF\u4E3B\u73AF\u5883\u4E0B\u53EA\u8BFB\uFF0C\u65E0\u6CD5\u4F7F\u7528\u3002

clearCache - method

\u53D8\u66F4\u8BB0\u5F55

v1.0.5 \u65B0\u589E

v1.1.11 \u4F5C\u5E9F

\u952E\u503C\u7684\u76F4\u63A5\u7F13\u5B58\u529F\u80FD\u5DF2\u88AB\u79FB\u9664\uFF0C\u56E0\u4E3A\u5176\u5B58\u5728\u5185\u5B58\u6EA2\u51FA (OOM) \u95EE\u9898

Editor - class

inner class Editor internal constructor()

\u53D8\u66F4\u8BB0\u5F55

v1.1.9 \u65B0\u589E

\u529F\u80FD\u63CF\u8FF0

YukiHookPrefsBridge \u7684\u5B58\u50A8\u4EE3\u7406\u7C7B\u3002

\u8BF7\u4F7F\u7528 edit \u65B9\u6CD5\u6765\u83B7\u53D6 Editor\u3002

\u5728\u6A21\u5757\u73AF\u5883\u4E2D\u6216\u542F\u7528\u4E86 isUsingNativeStorage \u540E\u4F7F\u7528\u3002

\u6CE8\u610F

\u5728 (Xposed) \u5BBF\u4E3B\u73AF\u5883\u4E0B\u53EA\u8BFB\uFF0C\u65E0\u6CD5\u4F7F\u7528\u3002

remove - method

fun remove(key: String): Editor

\u53D8\u66F4\u8BB0\u5F55

v1.1.9 \u65B0\u589E

\u529F\u80FD\u63CF\u8FF0

\u79FB\u9664\u5168\u90E8\u5305\u542B key \u7684\u5B58\u50A8\u6570\u636E\u3002

remove - method

inline fun <reified T> remove(prefs: PrefsData<T>): Editor

\u53D8\u66F4\u8BB0\u5F55

v1.1.9 \u65B0\u589E

\u529F\u80FD\u63CF\u8FF0

\u79FB\u9664 PrefsData.key \u7684\u5B58\u50A8\u6570\u636E\u3002

clear - method

fun clear(): Editor

\u53D8\u66F4\u8BB0\u5F55

v1.1.9 \u65B0\u589E

\u529F\u80FD\u63CF\u8FF0

\u79FB\u9664\u5168\u90E8\u5B58\u50A8\u6570\u636E\u3002

putString - method

fun putString(key: String, value: String): Editor

\u53D8\u66F4\u8BB0\u5F55

v1.1.9 \u65B0\u589E

\u529F\u80FD\u63CF\u8FF0

\u5B58\u50A8 String \u952E\u503C\u3002

putStringSet - method

fun putStringSet(key: String, value: Set<String>): Editor

\u53D8\u66F4\u8BB0\u5F55

v1.1.9 \u65B0\u589E

\u529F\u80FD\u63CF\u8FF0

\u5B58\u50A8 Set<String> \u952E\u503C\u3002

putBoolean - method

fun putBoolean(key: String, value: Boolean): Editor

\u53D8\u66F4\u8BB0\u5F55

v1.1.9 \u65B0\u589E

\u529F\u80FD\u63CF\u8FF0

\u5B58\u50A8 Boolean \u952E\u503C\u3002

putInt - method

fun putInt(key: String, value: Int): Editor

\u53D8\u66F4\u8BB0\u5F55

v1.1.9 \u65B0\u589E

\u529F\u80FD\u63CF\u8FF0

\u5B58\u50A8 Int \u952E\u503C\u3002

putLong - method

fun putLong(key: String, value: Long): Editor

\u53D8\u66F4\u8BB0\u5F55

v1.1.9 \u65B0\u589E

\u529F\u80FD\u63CF\u8FF0

\u5B58\u50A8 Long \u952E\u503C\u3002

putFloat - method

fun putFloat(key: String, value: Float): Editor

\u53D8\u66F4\u8BB0\u5F55

v1.1.9 \u65B0\u589E

\u529F\u80FD\u63CF\u8FF0

\u5B58\u50A8 Float \u952E\u503C\u3002

put - method

inline fun <reified T> put(prefs: PrefsData<T>, value: T): Editor

\u53D8\u66F4\u8BB0\u5F55

v1.1.9 \u65B0\u589E

\u529F\u80FD\u63CF\u8FF0

\u667A\u80FD\u5B58\u50A8\u6307\u5B9A\u7C7B\u578B\u7684\u952E\u503C\u3002

commit - method

fun commit(): Boolean

\u53D8\u66F4\u8BB0\u5F55

v1.1.9 \u65B0\u589E

\u529F\u80FD\u63CF\u8FF0

\u63D0\u4EA4\u66F4\u6539 (\u540C\u6B65)\u3002

apply - method

fun apply()

\u53D8\u66F4\u8BB0\u5F55

v1.1.9 \u65B0\u589E

\u529F\u80FD\u63CF\u8FF0

\u63D0\u4EA4\u66F4\u6539 (\u5F02\u6B65)\u3002

`,249);function q(S,_){const e=l("ExternalLinkIcon");return c(),t("div",null,[d,o("p",null,[i,o("a",y,[g,a(e)]),h]),A,B,o("p",null,[u,o("a",D,[F,a(e)]),C]),k,o("p",null,[m,o("a",v,[b,a(e)]),f]),x])}const E=p(r,[["render",q],["__file","YukiHookPrefsBridge.html.vue"]]);export{E as default};