Skip to content

Commit 4357c63

Browse files
authored
Update README.md
1 parent d74ae44 commit 4357c63

1 file changed

Lines changed: 130 additions & 123 deletions

File tree

README.md

Lines changed: 130 additions & 123 deletions
Original file line numberDiff line numberDiff line change
@@ -1,123 +1,130 @@
1-
# DPIS
2-
<img src="https://raw.githubusercontent.com/Xposed-Modules-Repo/io.github.kwensiu.dpis/refs/heads/main/icon.png" height='70px'>
3-
4-
![GitHub Release](https://img.shields.io/github/v/release/Kwensiu/DPIS)
5-
![License](https://img.shields.io/github/license/Kwensiu/DPIS)
6-
7-
中文说明 | [English](./README.en.md)
8-
9-
DPIS 是一个基于 LSPosed/Xposed 的 Android 模块,用于按应用独立调整显示参数(虚拟宽度 + 字体大小),在不改全局系统显示设置的前提下,优化单应用观感。
10-
11-
## 核心能力
12-
13-
- 按应用配置虚拟宽度(`dp`
14-
- 按应用配置字体大小(`50-300%`
15-
- 宽度与字体均支持 `伪装` / `替换` 两种模式
16-
- 应用列表支持搜索与筛选(全部应用 / 已配置应用)
17-
- 支持系统层 Hook 开关与安全模式
18-
19-
## 环境要求
20-
21-
- Android 8.0+(`minSdk 26`
22-
- 已 Root 设备
23-
- 已安装并启用 LSPosed/Xposed 环境
24-
25-
## 快速开始
26-
27-
1. 在 LSPosed 中启用 DPIS 模块。
28-
2. 在作用域中勾选目标应用。常规场景不需要勾选 `system`
29-
3. 打开 DPIS,给目标应用设置:
30-
- 虚拟宽度(`dp`
31-
- 字体大小(`50-300%`
32-
- 宽度模式与字体模式(`伪装` / `替换`
33-
4. 保存后重启目标应用进程生效;必要时重启设备。
34-
35-
如果你使用 `伪装` 模式,请额外在 LSPosed 中勾选 `system` 作用域;`替换` 模式通常不需要。
36-
37-
## 模式说明
38-
39-
| 模式 | 特点 | 适用场景 | 注意事项 |
40-
| --- | --- | --- | --- |
41-
| `伪装` | 更接近系统原生链路,显示通常更自然 | 追求系统级一致性 | 依赖系统层 Hook;部分应用不支持 |
42-
| `替换` | 直接重写字段,生效更直接 | 大多数常规应用 | 可能出现布局错位或缩放异常 |
43-
44-
## 系统层 Hook 与安全模式
45-
46-
- `关闭`:仅使用目标应用进程内覆写。建议搭配 `替换` 模式。
47-
- `开启`:启用完整 `system_server` 入口,适合调试与对照。
48-
- `开启 + 安全模式`:限制为低风险入口(`activity-start`),推荐作为默认配置。
49-
50-
如果你要使用 `伪装` 模式,请先确保 LSPosed 作用域已勾选 `system``替换` 模式通常可以只勾选目标应用。
51-
52-
## 日志与调试
53-
54-
- `日志输出` 默认建议关闭(降低性能开销)。
55-
- 开启后,`system_server` 高频入口会按采样窗口与去重策略输出。
56-
- 字体调试统计与悬浮窗仅用于诊断,不影响正常生效链路。
57-
58-
## 构建与测试
59-
60-
```powershell
61-
./gradlew :app:assembleModern101Debug :app:assembleCompat100Debug
62-
./gradlew :app:testAllDebugUnitTests
63-
```
64-
65-
可选安装(Windows PowerShell):
66-
67-
```powershell
68-
./gradlew :app:assembleModern101Debug; if ($LASTEXITCODE -eq 0) { adb install -r "app/build/outputs/apk/modern101/debug/app-modern101-debug.apk" }
69-
./gradlew :app:assembleCompat100Debug; if ($LASTEXITCODE -eq 0) { adb install -r "app/build/outputs/apk/compat100/debug/app-compat100-debug.apk" }
70-
```
71-
72-
## 项目结构
73-
74-
```text
75-
app/ Android 主模块
76-
src/main/java/ 共享生产代码
77-
src/main/res/ 共享资源与界面
78-
src/modern101/java/ libxposed API 101 专用代码
79-
src/compat100/java/ legacy Xposed API 兼容代码
80-
src/test/java/ 单元测试
81-
docs/ 当前有效文档
82-
docs/archive/ 历史归档文档
83-
refs/ 本地参考资料(LSPosed / AOSP / libxposed)
84-
```
85-
86-
## 版本说明
87-
88-
| 版本 | 文件名 | 适用环境 |
89-
| --- | --- | --- |
90-
| 标准版 | `DPIS_{version}.apk` | LSPosed(libxposed API 101+) |
91-
| 兼容版 | `DPIS_{version}_legacy.apk` | 传统 Xposed / 不支持 libxposed API 101 的框架 |
92-
93-
两个版本面向相同的用户功能目标,区别主要在于与 Xposed 框架的对接方式、下载入口与更新行为。优先使用标准版,仅在标准版无法加载时使用兼容版。
94-
95-
兼容版(`legacy`)请始终以主仓库 Releases 为准。LSPosed / Xposed 模块仓库仅同步标准版 APK。
96-
97-
标准版与兼容版不可共存。二者包名相同,交叉安装会相互覆盖,并可能导致已有配置或状态被重置。
98-
99-
## 文档导航
100-
101-
- 当前文档入口:[docs/README.md](docs/README.md)
102-
- 英文说明文档:[docs/README.en.md](docs/README.en.md)
103-
- 历史文档归档入口:[docs/archive/README.md](docs/archive/README.md)
104-
105-
## 许可证
106-
107-
DPIS 以 [GPL-3.0-or-later](LICENSE) 许可发布。
108-
109-
## 引用与致谢
110-
111-
DPIS 在实现和演进过程中,参考了以下开源项目的思路与实践,感谢这些项目及其贡献者:
112-
113-
- [libxposed/api](https://github.com/libxposed/api)
114-
- [LSPosed](https://github.com/LSPosed/Lsposed)
115-
- [AdClose](https://github.com/zjyzip/AdClose)
116-
- [App Settings(Xposed-Modules-Repo)](https://github.com/Xposed-Modules-Repo/ru.bluecat.android.xposed.mods.appsettings)
117-
- [InstallerX-Revived](https://github.com/wxxsfxyzm/InstallerX-Revived)
118-
- [InxLocker](https://github.com/Chimioo/inxlocker)
119-
- [视界调节](https://www.coolapk.com/feed/70930481?s=OGJiYmE1YjEyYmQ1MmZnNjllOTNiNWF6a1610b3)
120-
121-
## 免责声明
122-
123-
DPIS 运行于 Root/LSPosed 环境,存在稳定性与兼容性风险。请先备份重要数据,并自行评估使用风险。
1+
# DPIS
2+
<img src="https://raw.githubusercontent.com/Xposed-Modules-Repo/io.github.kwensiu.dpis/refs/heads/main/icon.png" height='70px'>
3+
4+
![GitHub Release](https://img.shields.io/github/v/release/Kwensiu/DPIS)
5+
![License](https://img.shields.io/github/license/Kwensiu/DPIS)
6+
[![QQ Group](https://img.shields.io/badge/交流群-1081784676-12B7F5?logo=qq&logoColor=white)](https://qun.qq.com/universal-share/share?ac=1&authKey=IMGMoVIeXPmgs81WgvJEgurLGCeuV%2FWKh8wSxZIXIqtvAA6U%2BJLMtwzG0lrZj7CG&busi_data=eyJncm91cENvZGUiOiIxMDgxNzg0Njc2IiwidG9rZW4iOiI4RkllZjhUVnhGYlVXcEhHZDhyWHdzcDRkRDlGKzlBL0NId1lkMTN2WFJ4SStHa2Y1bmJMM1dlemY5eEFxdmg4IiwidWluIjoiMTA3MDU3NTUyMSJ9&data=8HydkH9NGrhzp1pPhpOFSYT4Qp1aeQZZDN-Y1nk8cp-RBsmsBnRwQ_vN2qXfmhqtTc_LXfOpR6Gv9UCswKRjKg&svctype=4&tempid=h5_group_info)
7+
8+
9+
中文说明 | [English](docs/README.en.md)
10+
11+
DPIS 是一个基于 LSPosed/Xposed 的 Android 模块,用于按应用独立调整显示参数(最小宽度 + 字体大小),在不改全局系统显示设置的前提下,优化单应用观感。
12+
13+
## 核心能力
14+
15+
- 按应用配置最小宽度(`dp`
16+
- 按应用配置字体大小(`50-300%`
17+
- 宽度与字体均支持 `系统` / `兼容` 两种模式
18+
- 应用列表支持搜索与筛选(全部应用 / 已配置应用)
19+
- 支持系统层 Hook 开关与安全模式
20+
- 支持在应用详情中按应用自定义字体兼容链路(含 Flutter / HyperOS native 等补充链路)
21+
22+
## 环境要求
23+
24+
- Android 8.0+(`minSdk 26`
25+
- 已 Root 设备
26+
- 已安装并启用 LSPosed/Xposed 环境
27+
28+
## 快速开始
29+
30+
1. 在 LSPosed 中启用 DPIS 模块。
31+
2. 在作用域中勾选目标应用。常规场景不需要勾选 `system`
32+
3. 打开 DPIS,给目标应用设置:
33+
- 最小宽度(`dp`
34+
- 字体大小(`50-300%`
35+
- 宽度模式与字体模式(`系统` / `兼容`
36+
4. 保存后重启目标应用进程生效;必要时重启设备。
37+
38+
如果你使用 `系统` 模式,请额外在 LSPosed 中勾选 `system` 作用域;`兼容` 模式通常不需要。
39+
40+
## 模式说明
41+
42+
| 模式 | 特点 | 适用场景 | 注意事项 |
43+
| --- | --- | --- | --- |
44+
| `系统` | 更接近系统原生链路,显示通常更自然 | 追求系统级一致性 | 依赖系统层 Hook;部分应用不支持 |
45+
| `兼容` | 通过应用进程内兼容链路直接调整缩放,生效更直接 | 大多数常规应用 | 可能出现布局错位或缩放异常 |
46+
47+
> 说明:旧版本 UI 中的“伪装 / 替换”已改名为“系统 / 兼容”。
48+
49+
字体 `兼容` 模式默认启用 Resources、TextView 与 Paint 兜底链路,并通过调度与来源标记尽量避免重复放大。若某个应用出现缩放异常,可在目标应用详情页打开“自定义链路”,按应用关闭具体链路;修改会在目标应用进程下次启动时生效。
50+
51+
## 系统层 Hook 与安全模式
52+
53+
- `关闭`:仅使用目标应用进程内覆写。建议搭配 `兼容` 模式。
54+
- `开启`:启用完整 `system_server` 入口,适合调试与对照。
55+
- `开启 + 安全模式`:限制为低风险入口(`activity-start`),推荐作为默认配置。
56+
57+
如果你要使用 `系统` 模式,请先确保 LSPosed 作用域已勾选 `system``兼容` 模式通常可以只勾选目标应用。
58+
59+
## 日志与调试
60+
61+
- `日志输出` 默认建议关闭(降低性能开销)。
62+
- 开启后,`system_server` 高频入口会按采样窗口与去重策略输出。
63+
- 字体调试统计与悬浮窗仅用于诊断,不影响正常生效链路。
64+
65+
## 构建与测试
66+
67+
```powershell
68+
./gradlew :app:assembleModern101Debug :app:assembleCompat100Debug
69+
./gradlew :app:testAllDebugUnitTests
70+
```
71+
72+
可选安装(Windows PowerShell):
73+
74+
```powershell
75+
./gradlew :app:assembleModern101Debug; if ($LASTEXITCODE -eq 0) { adb install -r "app/build/outputs/apk/modern101/debug/app-modern101-debug.apk" }
76+
./gradlew :app:assembleCompat100Debug; if ($LASTEXITCODE -eq 0) { adb install -r "app/build/outputs/apk/compat100/debug/app-compat100-debug.apk" }
77+
```
78+
79+
## 项目结构
80+
81+
```text
82+
app/ Android 主模块
83+
src/main/java/ 共享生产代码
84+
src/main/res/ 共享资源与界面
85+
src/modern101/java/ libxposed API 101 专用代码
86+
src/compat100/java/ legacy Xposed API 兼容代码
87+
src/test/java/ 单元测试
88+
docs/ 当前有效文档
89+
docs/archive/ 历史归档文档
90+
refs/ 本地参考资料(LSPosed / AOSP / libxposed)
91+
```
92+
93+
## 版本说明
94+
95+
| 版本 | 文件名 | 适用环境 |
96+
| --- | --- | --- |
97+
| 标准版 | `DPIS_{version}.apk` | LSPosed(libxposed API 101+) |
98+
| 兼容版 | `DPIS_{version}_legacy.apk` | 传统 Xposed / 不支持 libxposed API 101 的框架 |
99+
100+
两个版本面向相同的用户功能目标,区别主要在于与 Xposed 框架的对接方式、下载入口与更新行为。优先使用标准版,仅在标准版无法加载时使用兼容版。
101+
102+
兼容版(`legacy`)请始终以主仓库 Releases 为准。LSPosed / Xposed 模块仓库仅同步标准版 APK。
103+
104+
标准版与兼容版不可共存。二者包名相同,交叉安装会相互覆盖,并可能导致已有配置或状态被重置。
105+
106+
## 文档导航
107+
108+
- 当前文档入口:[docs/README.md](docs/README.md)
109+
- 英文说明文档:[docs/README.en.md](docs/README.en.md)
110+
- 历史文档归档入口:[docs/archive/README.md](docs/archive/README.md)
111+
112+
## 许可证
113+
114+
DPIS 以 [GPL-3.0-or-later](LICENSE) 许可发布。
115+
116+
## 引用与致谢
117+
118+
DPIS 在实现和演进过程中,参考了以下开源项目的思路与实践,感谢这些项目及其贡献者:
119+
120+
- [libxposed/api](https://github.com/libxposed/api)
121+
- [LSPosed](https://github.com/LSPosed/Lsposed)
122+
- [AdClose](https://github.com/zjyzip/AdClose)
123+
- [App Settings(Xposed-Modules-Repo)](https://github.com/Xposed-Modules-Repo/ru.bluecat.android.xposed.mods.appsettings)
124+
- [InstallerX-Revived](https://github.com/wxxsfxyzm/InstallerX-Revived)
125+
- [InxLocker](https://github.com/Chimioo/inxlocker)
126+
- [视界调节](https://www.coolapk.com/feed/70930481?s=OGJiYmE1YjEyYmQ1MmZnNjllOTNiNWF6a1610b3)
127+
128+
## 免责声明
129+
130+
DPIS 运行于 Root/LSPosed 环境,存在稳定性与兼容性风险。请先备份重要数据,并自行评估使用风险。

0 commit comments

Comments
 (0)