mirror of
https://github.com/HighCapable/YukiHookAPI.git
synced 2025-09-04 09:45:19 +08:00
Modify merge isXSharePrefsReadable, isRunInNewXShareMode function to isPreferencesAvailable function in YukiHookModulePrefs
This commit is contained in:
@@ -50,7 +50,7 @@ class YukiHookModulePrefs private constructor(private var context: Context?)
|
|||||||
|
|
||||||
若你正在使用 `PreferenceFragmentCompat`,请迁移到 `ModulePreferenceFragment` 以适配上述功能特性。
|
若你正在使用 `PreferenceFragmentCompat`,请迁移到 `ModulePreferenceFragment` 以适配上述功能特性。
|
||||||
|
|
||||||
**可选配置**
|
**Optional Configuration**
|
||||||
|
|
||||||
若你不想将你的模块的 `xposedminversion` 最低设置为 `93`,你可以在 `AndroidManifest.xml` 中添加 `xposedsharedprefs` 来实现支持。
|
若你不想将你的模块的 `xposedminversion` 最低设置为 `93`,你可以在 `AndroidManifest.xml` 中添加 `xposedsharedprefs` 来实现支持。
|
||||||
|
|
||||||
@@ -64,47 +64,43 @@ class YukiHookModulePrefs private constructor(private var context: Context?)
|
|||||||
android:value="true"/>
|
android:value="true"/>
|
||||||
```
|
```
|
||||||
|
|
||||||
## isXSharePrefsReadable <span class="symbol">- field</span>
|
<h2 class="deprecated">isXSharePrefsReadable - field</h2>
|
||||||
|
|
||||||
```kotlin:no-line-numbers
|
|
||||||
val isXSharePrefsReadable: Boolean
|
|
||||||
```
|
|
||||||
|
|
||||||
**Change Records**
|
**Change Records**
|
||||||
|
|
||||||
`v1.0.90` `added`
|
`v1.0.90` `added`
|
||||||
|
|
||||||
**Function Illustrate**
|
`v1.1.5` `deprecated`
|
||||||
|
|
||||||
> 获取 `XSharedPreferences` 是否可读。
|
请转移到 `isPreferencesAvailable`
|
||||||
|
|
||||||
::: danger
|
<h2 class="deprecated">isRunInNewXShareMode - field</h2>
|
||||||
|
|
||||||
只能在 (Xposed) 宿主环境中使用,模块环境中始终返回 false。
|
|
||||||
|
|
||||||
:::
|
|
||||||
|
|
||||||
## isRunInNewXShareMode <span class="symbol">- field</span>
|
|
||||||
|
|
||||||
```kotlin:no-line-numbers
|
|
||||||
val isRunInNewXShareMode: Boolean
|
|
||||||
```
|
|
||||||
|
|
||||||
**Change Records**
|
**Change Records**
|
||||||
|
|
||||||
`v1.0.78` `added`
|
`v1.0.78` `added`
|
||||||
|
|
||||||
|
`v1.1.5` `deprecated`
|
||||||
|
|
||||||
|
请转移到 `isPreferencesAvailable`
|
||||||
|
|
||||||
|
## isPreferencesAvailable <span class="symbol">- field</span>
|
||||||
|
|
||||||
|
```kotlin:no-line-numbers
|
||||||
|
val isPreferencesAvailable: Boolean
|
||||||
|
```
|
||||||
|
|
||||||
|
**Change Records**
|
||||||
|
|
||||||
|
`v1.1.5` `added`
|
||||||
|
|
||||||
**Function Illustrate**
|
**Function Illustrate**
|
||||||
|
|
||||||
> 获取 `YukiHookModulePrefs` 是否正处于 EdXposed/LSPosed 的最高权限运行。
|
> 获取当前 `YukiHookModulePrefs` 的可用状态。
|
||||||
|
|
||||||
前提条件为当前 Xposed 模块已被激活。
|
在 (Xposed) 宿主环境中返回 `XSharedPreferences` 可用状态 (可读)。
|
||||||
|
|
||||||
::: danger
|
在模块环境中返回当前是否处于 New XSharedPreferences 模式 (可读可写)。
|
||||||
|
|
||||||
只能在模块环境中使用,(Xposed) 宿主环境中始终返回 false。
|
|
||||||
|
|
||||||
:::
|
|
||||||
|
|
||||||
## name <span class="symbol">- method</span>
|
## name <span class="symbol">- method</span>
|
||||||
|
|
||||||
|
@@ -56,47 +56,43 @@ class YukiHookModulePrefs private constructor(private var context: Context?)
|
|||||||
android:value="true"/>
|
android:value="true"/>
|
||||||
```
|
```
|
||||||
|
|
||||||
## isXSharePrefsReadable <span class="symbol">- field</span>
|
<h2 class="deprecated">isXSharePrefsReadable - field</h2>
|
||||||
|
|
||||||
```kotlin:no-line-numbers
|
|
||||||
val isXSharePrefsReadable: Boolean
|
|
||||||
```
|
|
||||||
|
|
||||||
**变更记录**
|
**变更记录**
|
||||||
|
|
||||||
`v1.0.90` `新增`
|
`v1.0.90` `新增`
|
||||||
|
|
||||||
**功能描述**
|
`v1.1.5` `作废`
|
||||||
|
|
||||||
> 获取 `XSharedPreferences` 是否可读。
|
请转移到 `isPreferencesAvailable`
|
||||||
|
|
||||||
::: danger
|
<h2 class="deprecated">isRunInNewXShareMode - field</h2>
|
||||||
|
|
||||||
只能在 (Xposed) 宿主环境中使用,模块环境中始终返回 false。
|
|
||||||
|
|
||||||
:::
|
|
||||||
|
|
||||||
## isRunInNewXShareMode <span class="symbol">- field</span>
|
|
||||||
|
|
||||||
```kotlin:no-line-numbers
|
|
||||||
val isRunInNewXShareMode: Boolean
|
|
||||||
```
|
|
||||||
|
|
||||||
**变更记录**
|
**变更记录**
|
||||||
|
|
||||||
`v1.0.78` `新增`
|
`v1.0.78` `新增`
|
||||||
|
|
||||||
|
`v1.1.5` `作废`
|
||||||
|
|
||||||
|
请转移到 `isPreferencesAvailable`
|
||||||
|
|
||||||
|
## isPreferencesAvailable <span class="symbol">- field</span>
|
||||||
|
|
||||||
|
```kotlin:no-line-numbers
|
||||||
|
val isPreferencesAvailable: Boolean
|
||||||
|
```
|
||||||
|
|
||||||
|
**变更记录**
|
||||||
|
|
||||||
|
`v1.1.5` `新增`
|
||||||
|
|
||||||
**功能描述**
|
**功能描述**
|
||||||
|
|
||||||
> 获取 `YukiHookModulePrefs` 是否正处于 EdXposed/LSPosed 的最高权限运行。
|
> 获取当前 `YukiHookModulePrefs` 的可用状态。
|
||||||
|
|
||||||
前提条件为当前 Xposed 模块已被激活。
|
在 (Xposed) 宿主环境中返回 `XSharedPreferences` 可用状态 (可读)。
|
||||||
|
|
||||||
::: danger
|
在模块环境中返回当前是否处于 New XSharedPreferences 模式 (可读可写)。
|
||||||
|
|
||||||
只能在模块环境中使用,(Xposed) 宿主环境中始终返回 false。
|
|
||||||
|
|
||||||
:::
|
|
||||||
|
|
||||||
## name <span class="symbol">- method</span>
|
## name <span class="symbol">- method</span>
|
||||||
|
|
||||||
|
@@ -190,28 +190,41 @@ class YukiHookModulePrefs private constructor(private var context: Context? = nu
|
|||||||
/**
|
/**
|
||||||
* 获取 [XSharedPreferences] 是否可读
|
* 获取 [XSharedPreferences] 是否可读
|
||||||
*
|
*
|
||||||
* - ❗只能在 (Xposed) 宿主环境中使用 - 模块环境中始终返回 false
|
* - ❗此方法已弃用 - 在之后的版本中将直接被删除
|
||||||
* @return [Boolean] 是否可读
|
*
|
||||||
|
* - ❗请现在转移到 [isPreferencesAvailable]
|
||||||
|
* @return [Boolean]
|
||||||
*/
|
*/
|
||||||
val isXSharePrefsReadable
|
@Deprecated(message = "请使用新方式来实现此功能", replaceWith = ReplaceWith(expression = "isPreferencesAvailable"))
|
||||||
get() = if (isXposedEnvironment) (runCatching { xPrefs.let { it.file.exists() && it.file.canRead() } }.getOrNull() ?: false) else false
|
val isXSharePrefsReadable get() = isPreferencesAvailable
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获取 [YukiHookModulePrefs] 是否正处于 EdXposed/LSPosed 的最高权限运行
|
* 获取 [YukiHookModulePrefs] 是否正处于 EdXposed/LSPosed 的最高权限运行
|
||||||
*
|
*
|
||||||
* - 前提条件为当前 Xposed 模块已被激活
|
* - ❗此方法已弃用 - 在之后的版本中将直接被删除
|
||||||
*
|
*
|
||||||
* - ❗只能在模块环境中使用 - (Xposed) 宿主环境中始终返回 false
|
* - ❗请现在转移到 [isPreferencesAvailable]
|
||||||
* @return [Boolean] 仅限在模块中判断 - 在 (Xposed) 宿主环境中始终返回 false
|
* @return [Boolean]
|
||||||
*/
|
*/
|
||||||
val isRunInNewXShareMode
|
@Deprecated(message = "请使用新方式来实现此功能", replaceWith = ReplaceWith(expression = "isPreferencesAvailable"))
|
||||||
get() = if (isXposedEnvironment.not())
|
val isRunInNewXShareMode get() = isPreferencesAvailable
|
||||||
runCatching {
|
|
||||||
|
/**
|
||||||
|
* 获取当前 [YukiHookModulePrefs] 的可用状态
|
||||||
|
*
|
||||||
|
* - 在 (Xposed) 宿主环境中返回 [XSharedPreferences] 可用状态 (可读)
|
||||||
|
*
|
||||||
|
* - 在模块环境中返回当前是否处于 New XSharedPreferences 模式 (可读可写)
|
||||||
|
* @return [Boolean]
|
||||||
|
*/
|
||||||
|
val isPreferencesAvailable
|
||||||
|
get() = if (isXposedEnvironment)
|
||||||
|
(runCatching { xPrefs.let { it.file.exists() && it.file.canRead() } }.getOrNull() ?: false)
|
||||||
|
else runCatching {
|
||||||
/** 执行一次装载 */
|
/** 执行一次装载 */
|
||||||
sPrefs.edit()
|
sPrefs.edit()
|
||||||
isUsingNewXSharedPreferences
|
isUsingNewXSharedPreferences
|
||||||
}.getOrNull() ?: false
|
}.getOrNull() ?: false
|
||||||
else false
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 自定义 Sp 存储名称
|
* 自定义 Sp 存储名称
|
||||||
|
Reference in New Issue
Block a user