基础配置
为不同的应用配置不同的伪装机型与系统属性。配置文件使用 TOML 格式。
配置文件路径
/data/adb/device_faker/config/config.toml配置为热加载:模块在每次应用启动时重新读取配置文件。修改配置后只需重启目标应用,无需重启系统。
- 配置文件缺失或解析失败时,该应用跳过伪装并卸载模块,不影响其他应用
- 未出现在任何配置中的应用不做任何伪装
全局设置
toml
debug = false # 调试日志(默认关闭)
default_force_denylist_unmount = false
default_cpu_spoof = "kirin_9030pro" # 模板/应用未指定 cpu_spoof 时的兜底预设debug:启用后输出 Info 级别日志(关闭时仅 Error),写入/data/adb/device_faker/logs/device_faker.log;正常使用建议保持关闭,以免留下不必要的运行痕迹default_force_denylist_unmount:为目标应用启用 Zygisk 的FORCE_DENYLIST_UNMOUNT,可在模板/应用里用force_denylist_unmount覆盖default_cpu_spoof:CPU 伪装预设名,模板/应用未指定cpu_spoof时回落到该预设
cpu_presets
[cpu_presets] 定义命名预设,值为完整的 /proc/cpuinfo 内容(TOML 多行字符串,示例省略了中间行):
toml
[cpu_presets]
kirin_9030pro = """Processor : AArch64 Processor rev 0 (aarch64)
Features : fp asimd evtstrm aes pmull sha1 sha2 crc32
...
Hardware : HiSilicon Kirin 9030 Pro"""在模板或 [[apps]] 中用 cpu_spoof = "预设名" 引用。详见 CPU 伪装。
编辑配置
多用户支持
支持在包名后追加 @userId 来只对指定用户生效。
userId对应路径/data/user/<userId>/...中的数字(例如0、999)- 匹配优先级:先匹配
com.example.app@userId,找不到再回退匹配com.example.app - 该写法同时适用于
apps里的package和模板的packages列表
方式一:机型模板
在模板中定义 packages 列表,自动应用到所有包名:
toml
[templates.redmagic_9_pro]
packages = [
"com.mobilelegends.mi",
# 仅对 userId=999 生效
# "com.mobilelegends.mi@999",
"com.supercell.brawlstars",
]
manufacturer = "ZTE"
brand = "nubia"
model = "NX769J"
device = "REDMAGIC 9 Pro"
fingerprint = "nubia/NX769J/NX769J:14/UKQ1.230917.001/20240813.173312:user/release-keys"
build_id = "UKQ1.230917.001"
# 无需写 [[apps]],所有包名自动使用该模板优点:
- 集中管理机型和包名
- 无需重复写
[[apps]] - 一目了然地看到哪些应用使用哪个模板
方式二:直接配置
使用 [[apps]] 为单个应用指定设备信息:
toml
[[apps]]
package = "com.omarea.vtools"
manufacturer = "Xiaomi"
brand = "Xiaomi"
model = "2509FPN0BC"
device = "Xiaomi 15 Pro"
product = "popsicle"
name = "popsicle"注意:package 是唯一必填字段,缺失会导致整个配置解析失败。
优先级
[[apps]] 直接配置 > 模板 packages 列表 > 全局默认值[[apps]]是整记录匹配:一旦包名命中[[apps]],该条记录整体取代模板——记录中未设置的字段不会回落模板,只套用全局默认值- 未命中
[[apps]]时,在模板的packages列表中查找 - 最终套用全局默认值:
force_denylist_unmount←default_force_denylist_unmount,CPU 预设 ←default_cpu_spoof - 未匹配任何配置的应用:不做伪装并卸载模块
覆盖模板示例:
toml
[templates.redmagic_9_pro]
packages = ["com.mobilelegends.mi"] # 默认使用这个模板
manufacturer = "ZTE"
brand = "nubia"
[[apps]]
package = "com.mobilelegends.mi" # 命中后整记录取代模板
manufacturer = "Samsung"
# 模板中设置了但这里未写的字段(如 brand)不会生效