Skip to content

Commit a71525e

Browse files
committed
docs: 更新v1.3.0版本变更内容
1 parent cd7fbce commit a71525e

6 files changed

Lines changed: 354 additions & 104 deletions

File tree

CHANGELOG.md

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,21 @@
11
# 📝更新日志
22

3+
## ⬆️[v1.2.0 → v1.3.0] - 2026-01-22
4+
5+
### 🆕 新功能
6+
- 📦 WebUI支持显示未安装但已配置的包名
7+
- 🏷️ WebUI在线模板库新增品牌分类
8+
- 🤖 新增Android版本伪装和自定义属性功能
9+
- 🔍 添加模板搜索功能
10+
- 👥 WebUI支持显示区分多用户包名
11+
12+
### ⚡ 改进
13+
- 🎨 优化WebUI样式及布局
14+
- ⚡ 优化WebUI应用列表加载
15+
- 🔧 characteristics 字段支持full模式
16+
- 🔒 优化full模式__system_property_get 函数拦截
17+
- 🔄 重构WebUI配置转换,支持直接选择
18+
319
## ⬆️[v1.1.0 → v1.2.0] - 2025-12-17
420

521
### 🆕 新功能

CONFIG.md

Lines changed: 116 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,6 @@
1111

1212
```toml
1313
default_mode = "lite" # 推荐:轻量模式(隐藏性更好)
14-
# default_mode = "full" # 完整模式(可能被检测)
1514
```
1615

1716
**可选值**
@@ -29,7 +28,8 @@ default_mode = "lite" # 推荐:轻量模式(隐藏性更好)
2928

3029
- `"resetprop"` - Resetprop 模式
3130
- 使用 resetprop 工具修改属性
32-
- 支持修改只读属性(如 `ro.build.characteristics`
31+
- 支持修改只读属性
32+
- 支持自定义属性和属性置空/删除
3333
- 在应用进入 resetprop 模式前会用 `getprop` 备份原始值,退出或切换到其它应用后由守护进程用 resetprop 自动还原
3434

3535
### default_force_denylist_unmount(全局默认卸载挂载点)
@@ -167,9 +167,23 @@ model = "SM-S9280"
167167
| `fingerprint` | `Build.FINGERPRINT` | + `ro.build.fingerprint` | 指纹 |
168168
| `name` || `ro.product.name` + `ro.product.device` | 代号 (如: xuanyuan) |
169169
| `marketname` || `ro.product.marketname` | 型号 (如: REDMI K90 Pro Max) |
170-
| `characteristics` || `ro.build.characteristics` | 特性 (如: tablet) - 仅 resetprop 模式生效 |
170+
| `characteristics` || `ro.build.characteristics` | 特性 (如: tablet) - 仅 full 模式生效 |
171+
| `android_version` | `Build.VERSION.RELEASE` | + `ro.build.version.release`| Android 版本号 (如: 15, 14) |
172+
| `sdk_int` | `Build.VERSION.SDK_INT` | + `ro.build.version.sdk`| SDK 版本号 (如: 35, 34) |
173+
| `custom_props` ||| 自定义属性映射表 |
171174
| `force_denylist_unmount` | N/A | N/A | 是否对该应用强制卸载模块挂载点;未指定时使用 `default_force_denylist_unmount` |
172175

176+
**Android 版本伪装字段**(新增):
177+
| 字段 | 说明 | 示例 |
178+
|------|------|------|
179+
| `android_version` | Android 版本号,所有模式都支持 | `"15"`, `"14"`, `"13"` |
180+
| `sdk_int` | SDK 版本号,所有模式都支持 | `35`, `34`, `33` |
181+
182+
**自定义属性字段**(新增):
183+
| 字段 | 说明 |
184+
|------|------|
185+
| `custom_props` | 自定义属性映射表,仅 full/resetprop 模式支持 |
186+
173187
**配置元数据字段**(仅用于显示,不影响伪装效果):
174188
| 字段 | 说明 |
175189
|------|------|
@@ -189,29 +203,113 @@ model = "SM-S9280"
189203
- [[apps]] 中的字段会覆盖模板的配置
190204
- `name``marketname` 仅在 **full 模式**下有效(影响 SystemProperties)
191205
- `name` 字段在 full 模式下会同时伪装 `ro.product.name``ro.product.device`
192-
- `characteristics` 字段仅在 **resetprop 模式**下生效
193-
- **lite 模式**下,只有 `manufacturer``brand``model``device``product``fingerprint` 生效
206+
- `characteristics` 字段仅在 **full 模式**下生效
207+
- `android_version``sdk_int`**所有模式**下都生效
208+
- **lite 模式**下,只有 `manufacturer``brand``model``device``product``fingerprint``android_version``sdk_int` 生效
209+
210+
## Android 版本伪装(新增功能)
211+
212+
所有模式都支持 Android 版本和 SDK 版本伪装:
213+
214+
```toml
215+
# 模板示例:伪装为 Android 15
216+
[templates.android_15]
217+
packages = ["com.app.needs.android15"]
218+
manufacturer = "Google"
219+
brand = "google"
220+
model = "Pixel 9 Pro"
221+
android_version = "15"
222+
sdk_int = 35
223+
224+
# 应用示例:伪装为旧版 Android
225+
[[apps]]
226+
package = "com.needs.old.android"
227+
mode = "lite" # lite 模式也支持!
228+
android_version = "13"
229+
sdk_int = 33
230+
```
231+
232+
**版本伪装会修改的属性**
233+
234+
| 模式 | Build.VERSION 字段 | 系统属性 |
235+
|------|-------------------|----------|
236+
| lite | `RELEASE`, `SDK_INT` ||
237+
| full | `RELEASE`, `SDK_INT` | `ro.build.version.release`, `ro.build.version.sdk`|
238+
| resetprop | `RELEASE`, `SDK_INT` | `ro.build.version.release`, `ro.build.version.sdk`|
239+
240+
**完整的系统属性列表**(full/resetprop 模式):
241+
- `ro.build.version.release`
242+
- `ro.system.build.version.release`
243+
- `ro.vendor.build.version.release`
244+
- `ro.product.build.version.release`
245+
- `ro.build.version.sdk`
246+
- `ro.system.build.version.sdk`
247+
- `ro.vendor.build.version.sdk`
248+
- `ro.product.build.version.sdk`
249+
250+
## 自定义属性(新增功能)
251+
252+
**full/resetprop 模式** 都支持自定义属性,可以设置任意系统属性:
253+
254+
```toml
255+
[[apps]]
256+
package = "com.custom.app"
257+
mode = "resetprop"
258+
manufacturer = "Custom"
259+
260+
# 自定义属性
261+
[apps.custom_props]
262+
"ro.custom.property" = "custom_value"
263+
"ro.another.prop" = "another_value"
264+
```
265+
266+
### 特殊标记值
267+
268+
支持使用特殊标记值来执行特殊操作:
269+
270+
| 标记值 | 含义 | 示例 |
271+
|--------|------|------|
272+
| 普通字符串 | 设置为该值 | `"ro.prop" = "value"` |
273+
| `""` 或省略 | 不修改(保持原值) | `brand = ""` |
274+
| `"__EMPTY__"` | 设置为空字符串 | `brand = "__EMPTY__"` |
275+
| `"__DELETE__"` | 删除该属性 | `model = "__DELETE__"` |
276+
277+
**示例**
278+
279+
```toml
280+
[[apps]]
281+
package = "com.example.app"
282+
mode = "resetprop"
283+
manufacturer = "Google"
284+
brand = "__EMPTY__" # 将 brand 设置为空字符串
285+
model = "__DELETE__" # 删除 model 属性
286+
287+
# 自定义属性也支持特殊标记
288+
[apps.custom_props]
289+
"ro.custom.flag" = "enabled"
290+
"ro.debug.mode" = "__DELETE__"
291+
"ro.empty.value" = "__EMPTY__"
292+
```
194293

195294
## 模式对比
196295

197296
| 特性 | lite 模式 ⭐ | full 模式 | resetprop 模式 |
198297
|------|-------------|-----------|----------------|
199298
| Build 类伪装 ||||
200299
| SystemProperties 伪装 ||||
300+
| characteristics 伪装 ||||
201301
| 只读属性修改 ||||
302+
| 自定义属性 ||||
303+
| 属性置空/删除 ||||
304+
| Android 版本伪装 ||||
305+
| SDK 版本伪装 ||||
202306
| 模块可卸载 ||||
203-
| 隐蔽性 | ⭐⭐⭐⭐⭐ | ⭐⭐⭐ | ⭐⭐ |
307+
| 隐蔽性 | ⭐⭐⭐⭐⭐ | ⭐⭐⭐ | ⭐⭐ |
204308
| 被检测风险 | 极低 | 较低 | 较低 |
205-
| 推荐度 | ⭐⭐⭐⭐⭐ | ⭐⭐⭐ | ⭐⭐ |
309+
| 推荐度 | ⭐⭐⭐⭐⭐ | ⭐⭐⭐ | ⭐⭐ |
206310

207311
## 如何选择模式?
208312

209-
### 推荐策略
210-
211-
1. **默认使用 lite 模式** - 覆盖 90% 的场景
212-
2. **测试应用** - 看是否能正常使用
213-
3. **如果不行** - 再改用 full 模式
214-
215313
### 判断依据
216314

217315
**使用 lite 模式**
@@ -222,7 +320,10 @@ model = "SM-S9280"
222320
**使用 full 模式**
223321
- 应用会读取 SystemProperties
224322
- lite 模式下仍能检测到真实机型
225-
- 不在乎被检测到模块
323+
- 需要伪装 characteristics(如 QQ 平板模式)
324+
- 需要自定义属性
226325

227326
**使用 resetprop 模式**
228-
- 需要修改 `ro.build.characteristics` (如 QQ 平板模式)
327+
- 需要修改只读属性
328+
- 需要删除或置空某些属性
329+
- 需要完整的自定义属性支持

README.md

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,14 @@ Device Faker 提供了现代化的 Web 管理界面,可以通过WebUI-X API访
3838

3939
配置文件位于 `/data/adb/device_faker/config/config.toml`,使用 TOML 格式。修改配置后仅需重启对应应用即可生效,无需重启系统。
4040

41+
## 模板配置贡献 🎁
42+
43+
感谢社区成员的贡献,你也可以参与!Device Faker 配置仓库:
44+
45+
- 📦 [device_faker_config](https://github.com/Seyud/device_faker_config) - 贡献机型模板配置
46+
47+
贡献设备配置,帮助更多用户获得更好的机型伪装效果!
48+
4149
## 致谢 🙏
4250

4351
本项目在开发过程中参考了以下优秀项目:
@@ -52,4 +60,4 @@ Device Faker 提供了现代化的 Web 管理界面,可以通过WebUI-X API访
5260

5361
**📱 让设备不为应用的机型限制所困!** 🚀
5462

55-
> 💝 如果这个模块对你有帮助,可以给个 Star 支持一下
63+
> 💝 如果这个模块对你有帮助,可以给个 Star 支持一下

en/CHANGELOG.md

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,21 @@
11
# 📝 Changelog
22

3+
## ⬆️[v1.2.0 → v1.3.0] - 2026-01-22
4+
5+
### 🆕 New Features
6+
- 📦 WebUI supports displaying configured but not installed package names
7+
- 🏷️ WebUI online template library added brand classification
8+
- 🤖 Added Android version camouflage and custom attribute features
9+
- 🔍 Added template search function
10+
- 👥 WebUI supports displaying and distinguishing multi-user package names
11+
12+
### ⚡ Improvements
13+
- 🎨 Optimized WebUI styles and layout
14+
- ⚡ Optimized WebUI application list loading
15+
- 🔧 characteristics field supports full mode
16+
- 🔒 Optimized full mode __system_property_get function interception
17+
- 🔄 Refactored WebUI configuration conversion, supports direct selection
18+
319
## ⬆️[v1.1.0 → v1.2.0] - 2025-12-17
420

521
### 🆕 New Features

0 commit comments

Comments
 (0)