v1.0.0-Beta-2
Pre-release
Pre-release
·
138 commits
to main
since this release
概述
Beta 1 之后的第一个预发布,集中在踏板体验、配置同步可靠性和激活状态可视化三块。共 34 个提交,其中 4 个为已 revert 的临时测试 tag,实际功能提交 30 个,覆盖 M7~M16 共 10 个里程碑。
✨ 新功能
踏板拓扑与双踏板
- 踏板拓扑下拉:原"线性踏板"开关升级为下拉,支持 关闭 / 单踏板 / 双踏板 三种模式。
- 双踏板模式:油门和刹车各占一个独立 overlay,可分别拖动定位;引入刹车优先仲裁——同时按下时屏蔽油门输入,避免油门刹车打架。
- 刹车踏板方向反转:双踏板模式下新增开关,刹车红色区域可改为从上往下生长(默认从下往上)。
- 响应曲线温和化:指数曲线 exponent 从 0.42 调到 0.66(30%→45%),手感更线性。
布局编辑
- 长按重置出厂默认:编辑模式下长按编辑层按钮,把 overlay 位置重置到出厂默认位置(不再重置到"上次保存值")。
- SINGLE/DUAL 位置隔离:单踏板和双踏板的位置分别持久化到独立 JSON 字段,互不串扰(修复了"DUAL 油门继承 SINGLE 拖动位置"的 bug)。
配置同步
- 配置即时生效:在模块设置界面改配置后,游戏内 overlay 立即重建应用,无需重启游戏(M11/M12 遗留的"必须 toggle 才生效"已根治)。
- Remote Preferences 跨进程同步:配置同步迁移到 libxposed API 102 的
getRemotePreferences,经 LSPosed daemon(system uid,可读任意 filesDir)binder,绕开 Android 11+ scoped storage + 包可见性双拦。根治了"首次启动游戏读到旧配置"(M11 广播首次启动滞后的根因)。
概览页
- 激活卡片 UI 重做:照搬 KernelSU HomeMiuix 的对称强调底色(已激活=绿色调,未激活=红色调),Non-root 确认弹窗改用官方 miuix
OverlayDialog。 - LSPosed 真激活检测:激活判定从
System.getProperty(MODULE_LOADED_FLAG)(ConfigActivity 进程不可达,死路)改为App.xposedService != null(daemon 绑定 = Manager 当前启用)。语义实时跟随 Manager 启用态,不需重启进程。 - GitHub/QQ 图标:概览页 LinksCard 内嵌 SVG path 图标——GitHub 行用 Octocat,QQ 群行用 QQ 企鹅 logo(均来自 simple-icons,CC0)。
🐛 修复
- 方向键/摇杆转向失灵(M14 核心 bug):native
input_writer_thread以 ~500Hz 持续写0.0f到油门/刹车字段,覆盖了游戏自带的转向辅助输入,导致ButtonsSteering(屏幕方向键)模式的steerHelp/LockSteerAtVelocity/TractionFilter失效,方向键不转向。陀螺仪模式不依赖油门/刹车做转向,故不受影响。修复:writer 在用户未按踏板时早退(不写任何值),活动→非活动切换时主动 clear 一次。 - CI lint 假绿:M11/M12/M13 的
ContextCompat.registerReceiver在 else 分支漏传RECEIVER_EXPORTEDflag 触发UnspecifiedRegisterReceiverFlag,CIlintDebug失败。统一改用ContextCompat.registerReceiver(context, receiver, filter, RECEIVER_EXPORTED)(AndroidX 自动按 SDK_INT 分发)。
⚙️ 技术细节
- raw/mapped 值分离(M11):
PedalOverlayView区分rawThrottle/rawBrake(手指位移,驱动绘制,视觉跟手)和mappedThrottle/mappedBrake(曲线变换后送 native,非线性游戏输入)。这使得双踏板仲裁能"视觉同时显示两指、游戏只收一侧输入"。 - 左下角坐标系(M12):默认位置改为用户直觉的左下角原点百分比(pedal (80,55)
(95,5)、brake (5,55)(20,5)),内部存储仍是 Android 原生左上角原点,只改默认值,转换 helper 不变。 - 废弃 IPC 路径:
ConfigProvider.kt在广播方案落地后已废弃,Remote Preferences 方案下更无用,待后续清理。
⚠️ 升级须知
- 配置文件格式有变更(
enable_control_replacementbool →pedal_mode枚举,pedal_curve→throttle_curve/brake_curve),模块在读取时会自动迁移旧字段,无需手动处理。 - 单/双踏板位置现已独立存储,从旧版本升级后单踏板位置保持,首次切到双踏板会用默认位置。
完整变更
Beta 1 (v1.0.0-Beta-1) 到 Beta 2 (v1.0.0-Beta-2) 共 30 个功能提交,详见 Beta 1...Beta 2 对比。