本日志记录了项目重构后的主要变更。
v3.1.6为v3.1.6-beta到v3.1.6-beta.5的正式版收敛,以下汇总本版本主要能力变更;每个 beta 的细节仍保留在本文件后续章节。
- 转发体系重构:引入发送通道(Webhook/Telegram 等)与公共模板配置,支持按通道独立启停、独立配置与状态反馈。
- 普通短信转发策略升级:新增“按通道控制普通短信转发”,并统一短信/应用通知的转发结果记录语义。
- 应用通知能力上线:新增应用通知转发链路(系统 Hook + 监听兜底)、应用控制页与应用详情页,支持按应用粒度控制与诊断。
- 新增内置 WebUI:支持发送通道增删改查、记录查看与更多设置映射,并补充局域网访问开关。
- 记录中心增强:支持验证码/普通短信/应用通知分类型开关、保留条数与导出范围。
- 模板与配置体验优化:变量体系补齐(卡槽/来源等)、模板编辑与预览增强、通道详情返回自动保存。
- 自动输入与拦截链路持续优化:补充字符间隔设置、黑名单规则与行为链路稳定性改进。
- 更新与保活增强:新增非 Play 应用内升级流程(含 APK 摘要与签名一致性校验)及后台保活选项。
- 修复“应用控制”大位图崩溃风险:主题截图与图标解码增加尺寸保护,应用列表支持分段渲染。
- 短信链路可观测性升级:新增
event_id全链路追踪,阻断路径补充明确原因(blacklist_block/pref_block_sms)。 - 跨进程与跨 UID 场景加固:清理误导性
EACCES回退噪声,补强 token 读取与系统进程兼容逻辑。 - 发送通道体验优化:新增删除后 5 秒撤销(Undo)能力,降低误删成本。
- 版本升级到
versionCode 97/versionName 3.1.6。 - 构建链路与静态检查持续清理(Gradle nightly / Detekt),并将 Renovate 基线分支调整为
beta以对齐自动化流程。
Full Changelog: https://github.com/magisk317/XposedSmsCode/compare/v3.1.5...v3.1.6 Incremental since beta.5: https://github.com/magisk317/XposedSmsCode/compare/v3.1.6-beta.5...v3.1.6
- 新增更新安全校验:安装前执行 APK
SHA256校验与签名一致性校验,不满足条件自动回退外链下载。 - 新增“后台保活”分组:支持“强停后自恢复”与“恢复失败时前台拉起一次”两项能力(默认关闭)。
- 新增 SIM 卡槽备注:可自定义模板变量
{{CARD_SLOT}}文案,便于多卡场景区分。 - 新增自动输入“字符间隔(ms)”配置,优化部分机型输入稳定性。
- 记录页能力增强:支持按验证码/普通短信/应用通知分别设置开关、条数上限与导出范围。
- 记录详情与列表展示优化:转发结果更易读,普通短信无验证码时补充发件人/号码展示。
- 转发链路健壮性增强:补充异常兜底与执行调度保护,修复普通短信记录与状态异常场景。
- 通道配置页优化:返回即自动保存,移除退出弹窗;模板与状态相关体验持续收敛。
- WebUI 设置增强:补齐实验项控制与更多配置项映射。
- 通知设置联动:关闭“显示状态栏通知”时,自动隐藏“自动取消通知/通知保留时间”选项。
- 修复日志目录清理失败场景,增加
su回退路径。 - 修复多处记录状态判定与展示问题,降低“已转发却显示未转发”概率。
- 持续升级构建工具链并清理静态检查告警(Gradle nightly / Detekt)。
- 升级到
versionCode 96/versionName 3.1.6-beta.5。
6fc5455fix(ci): allow nightly gradle wrapper in detekt workflows4953208build(wrapper): update gradle wrapper to nightly 202603020002237f9290ffix(detekt): clean warnings and harden exception handling6eca9fafix: decouple interception from forwarding and refine status/settings0fbdf5dfix: implement a complete KillMeAction self-termination flow0b9a461feat(settings): add launcher icon visibility toggle062ffeffeat(sender): auto-save on back and remove exit dialoge2e484bfix(log): cleanup temp log directories with su fallbackd42f083fix(record): decouple forwarding status from interception and refine status rendering1f9905cfix(forward): restore plain SMS record insertion for status trackingbb001a8feat(ui): improve template preview and forwarding-result readability43b491ffix(sender-list): prevent FAB from overlapping bottom action buttons383d4c2feat(webui): align settings groups and improve app/record operations0860439feat(record): split tab settings and support scoped export7692d17fix(record): apply per-type switches and retention limitsaba41d7refactor(sender-form): group forwarding toggles in shared sectionf26f017feat(sender-list): compact cards and hide rules entry81cf556feat(auto-input): add configurable character input intervald0d384ffeat(update): add non-Play in-app upgrade flow and recovery settingsbe52786fix(settings): link notification options visibility to status bar toggle
Full Changelog: https://github.com/magisk317/XposedSmsCode/compare/v3.1.6-beta.4...v3.1.6-beta.5
- 新增内置 WebUI:支持发送通道增删改查与记录查看,并在高级设置增加 WebUI 局域网访问开关。
- 增强应用通知转发诊断:补充
trace/event_id贯穿日志、投递回执与更细粒度链路追踪。 - Webhook 测试日志增强:补充请求上下文,便于定位 4xx/5xx 与配置差异问题。
- 日志导出升级:支持打包分享应用日志 + LSPosed 日志,并完善日志目录清理能力。
- 日志打包链路加固:修复导出路径与存储细节,降低导出失败概率并统一私有目录策略。
- 修复应用列表切换/搜索后的视图与过滤状态异常。
- 修复系统通知转发配置读取不稳定问题(system_server 侧容错增强)。
- 修复邮件通道 SMTP 传输回退与 provider 兼容问题。
- 修复备份还原后转发状态不一致问题,补齐恢复一致性。
- 修复短信记录指纹与
msg_type对齐问题,避免短信/应用通知状态串写。 - 修复 DataStore/SharedPreferences 类型不一致导致的读取异常。
- 优化短信自动删除流程:提升触发时机与重试可靠性。
- 升级 Gradle Wrapper 夜版工具链。
- 补齐 JUnit Platform Launcher 运行时依赖,修复单测运行环境。
- 记录页 Haze 分层细节修复,减少视觉错位。
99a284abuild(wrapper): update gradle wrapper to nightly 20260301003351f06809dfix(test): add junit platform launcher runtime for unit testsbfaf804fix(records-ui): align haze layering with fixed header tabs8ee8638feat(webui): add Ktor web ui with sender CRUD and responsive records6bf187cfeat(settings): add WebUI LAN toggle in advanced settingsd520969fix(app-config): keep viewport stable and sync search filter statea4433e9fix(notification): harden app forwarding lookup in system_server57d0e84feat(auto-input): read blocked state from provider with file fallbacka731ae9fix(webui): preserve app list scroll position after toggle refresh73beb27fix(email): add smtp transport fallback and keep mail provider classes7dde188docs(donations): add 2026-03-01 wechat sponsorship record8046638feat(log): support bundled log share and full log cleanupdc8ec7dfeat(forward): add trace logs across forwarding flowcbe8435feat(webhook): enhance header config and test log context91f8e27docs(donations): update donor entryb409f24fix(backup): support database restore option and preserve forward state2319201fix(db): align sms fingerprint with msg_type492d586feat(log): harden log bundle export and private storage25237e4fix(prefs): tolerate datastore/sharedprefs type mismatch02e644cfeat(sms): improve auto-delete reliability with observer flow
Full Changelog: https://github.com/magisk317/XposedSmsCode/compare/v3.1.6-beta.3...v3.1.6-beta.4
- 应用控制页重构:底部 Tab“黑名单”更名为“应用”,新增“应用控制”页与每应用详情页。
- 应用详情支持双开关联动(自动输入拦截 / 应用通知转发)与近期转发日志查看,便于快速排查。
- 通道配置升级:新增“应用通知配置”,模板编辑体验与“短信公共配置”保持一致,并支持“卡槽→应用”语义替换。
- 新增应用通知转发链路(支持系统通知 Hook 与监听服务兜底),并接入去重与更完整的状态回写。
- 新增通道级“转发应用通知”开关:应用通知需同时满足“应用侧开启 + 通道侧开启”才会转发。
- 转发结果展示统一:转发目标改为具体通道名,结果文案统一为“成功转发到X个通道”,短信与应用通知记录行为对齐。
- 修复 Telegram MarkdownV2 字符转义问题,提升消息渲染稳定性。
- 修复结果实体混淆问题与多处构建/依赖兼容性细节。
- 升级到
versionCode 94/versionName 3.1.6-beta.3。
Full Changelog: https://github.com/magisk317/XposedSmsCode/compare/v3.1.6-beta.2...v3.1.6-beta.3
- 本版本重构了转发体系,升级后会清除旧转发数据,请务必先备份。
- 新增发送通道顶部“公共配置”卡片,可统一配置设备识别号与转发模板。
- 转发模板支持更丰富变量:卡槽/SubId/来源姓名/来源归属/软件版本等。
- 新增模板快速填充与变量插入能力,提升模板编辑效率。
- 未命名通道显示优化:空名称时显示通道类型。
- 补齐短信转发链路中的卡槽与来源元数据透传与解析。
- 模板渲染后自动移除空值整行,输出内容更整洁。
- 记录页样式优化:顶部计数标题居中、数量使用括号、去除不必要色块背景。
Full Changelog: https://github.com/magisk317/XposedSmsCode/compare/v3.1.6-beta...v3.1.6-beta.2
- 新增验证码转发能力:支持
Webhook+Telegram双通道,并记录每条短信的转发状态、目标、时间与结果(#119)。 - 转发设置升级为通道独立配置:支持各通道单独启用、单独配置、独立保存反馈与配置状态显示(已配置/未配置)。
- 新增“非验证码短信转发”通道级开关:每个通道可独立决定是否转发普通短信,且普通短信仅转发正文,自动忽略验证码结构化字段(#120)。
- 修复验证码提取在中英混合场景下可能误取品牌词的问题,优先提取数字验证码(如 Wise/PayPal 场景,#117)。
- 修复记录详情中“转发目标”泄露具体配置的问题,现仅展示渠道名称(#118)。
- 修复
LicenseActivity从后台恢复时可能出现的灰屏问题(#116)。 - 修复飞书机器人 webhook 兼容性:按飞书要求发送
msg_type/content,并按业务返回码判定成功/失败。
Full Changelog: https://github.com/magisk317/XposedSmsCode/compare/v3.1.5...v3.1.6-beta
注: v3.1.5 为自 v3.1.4 迭代了三版 Beta 后的正式版,以下是相比于最后一次内测(Beta 3)所新增/修改的内容。整体功能介绍请结合下方 beta 系列的日志。
- 修复验证码记录列表中,App 包名及图标信息未锁定(滑动列表可能复用错乱)以及左对齐排版不居中的问题(#110)。
- 恢复了实验性功能内的“标记为已读”功能并解除了置灰不可点状态,同时更新多语言免责说明。
- 拦截屏幕UI优化:统一了黑名单各项规则(号码、号段、内容)的正则或分隔符说明,并在弹窗输入中增加了多规则格式(中英文分隔符、竖线)校验拦截。
- 补充并更新
renovate.json规则:开启 Fork 自动化更新处理、设置 baseBranches 和包名过滤策略。 - 升级 Gradle Wrapper 到最新的 Nightly 测试版本。
- 修复 Detekt 代码检查中基于
int:LOG_LEVEL引入的无用警告误报。
Full Changelog: https://github.com/magisk317/XposedSmsCode/compare/v3.1.5-beta.3...v3.1.5
- 修复 Hook 进程中因
Context/dataDir与未解锁阶段 CE 偏好读取导致的验证码解析失败问题(#108)。
Full Changelog: https://github.com/magisk317/XposedSmsCode/compare/v3.1.5-beta.2...v3.1.5-beta.3
- 修复 DataStore 在并发访问下可能创建重复活跃实例并触发
FileStorage.createConnection崩溃的问题(#104)。 - 修复 Android 16 系统 Hook 兼容性问题:改为方法集合匹配,避免
NoSuchMethodError等签名漂移导致的 Hook 失败(#105)。 - 修复 Android 13 下状态栏沉浸不完整问题,改为官方
enableEdgeToEdge(SystemBarStyle...)实现(#106)。
- 调整通知相关设置:将 Toast 提示与状态栏通知放到同一分组,避免语义分散(#103)。
- 优化通知文案,明确“状态栏通知(部分系统显示为电话服务)”与 Toast 的区别(#103)。
- 将“标记为已读”暂时关闭并置灰,设置中明确当前不可用(#103)。
- 完成一轮 M3 Expressive 一致性优化:记录详情动作区升级、对话框 ButtonGroup 语义统一、加载指示器 token 收敛(#100/#101/#102)。
- 升级到
versionCode 89/versionName 3.1.5-beta.2。
Full Changelog: https://github.com/magisk317/XposedSmsCode/compare/v3.1.5-beta...v3.1.5-beta.2
- 修复短信拦截链路在进程回收场景下的稳定性问题(#81)。
- 修复短信删除在部分系统短信数据库通路中的失效问题(#85)。
- 修复“记录/拦截”页面保存反馈缺失,补齐 Toast 提示(#81、#86)。
- 修复拦截规则说明中中英文 regex 指引不一致的问题(#87)。
- 新增可配置短信黑名单:支持号码/号段/正则/内容匹配,以及“删除短信/阻断广播”动作(#84)。
- 设置页新增“自动输入后自杀”开关,并将触发时机对齐自动输入阶段(#90)。
- 统一对话框按钮语义为 M3 层级并重构记录详情交互(字段点击复制、动作精简)(#94)。
- 新增 dynamic color 主题能力,并保留 pure black 主题表现(#93)。
- 迁移到 Material 3 下拉刷新并统一加载反馈体验(#92)。
- 完成 DBProvider 到 Room 通路迁移阶段一,降低 legacy API 依赖并增强诊断(#96)。
- 清理当前 code scanning 的 detekt open 告警(复杂度/魔法数字/超长行)(#95)。
- 升级依赖:
nl.littlerobots.version-catalog-update1.0.1 -> 1.1.0(#91)。 - 例行更新 Gradle Wrapper 夜版工具链(#97)。
- 升级到
versionCode 88/versionName 3.1.5。
Full Changelog: https://github.com/magisk317/XposedSmsCode/compare/v3.1.4...v3.1.5-beta
- 修复验证码测试弹窗在部分场景下无响应的问题(#80)。
- 修复 Android 13 环境下自动输入相关 Hook 的兼容性问题(#78)。
- 补齐设置页国际化文案,修复中文环境中模糊配置项回退英文的问题。
- 新增隐藏图标恢复能力与秘密代码/快捷方式入口(#79)。
- README 结构调整:星图与下载按钮前置,并补充原始项目致谢与兼容性说明。
- 发布流程切换为语义化标签触发(
vX.Y.Z),修复旧标签格式导致的触发/命名问题。 - Draft Release 默认内置 Google Play / GitHub 下载按钮(本仓库与 Xposed 模块仓库同步)。
- 新增 README 徽章自动同步工作流,并补充提交活跃度/贡献者等徽章。
- 调整 Gradle Wrapper 定时更新策略,优化自动更新时效。
- 升级到
versionCode 87/versionName 3.1.4。
Full Changelog: https://github.com/magisk317/XposedSmsCode/compare/v3.1.3...v3.1.4
- 新增 Android 16(SDK 36)
PermissionManagerService兼容 Hook,适配系统 API 变化。 - 增强
onPackageInstalled参数校验与异常日志记录,降低运行时崩溃风险。 - 改进
getAllUserIds返回值兼容逻辑,同时适配IntArray/List<UserInfo>。
- README 徽章与下载入口样式统一,提升版本/下载信息可见性。
- 完成与
Xposed-Modules-Repo的模块仓库对接验证。
- Gradle Wrapper 更新至 nightly。
- KSP 升级至
2.3.6。
Full Changelog: https://github.com/magisk317/XposedSmsCode/compare/v3.1.2...v3.1.3
- 新增验证码自动填充后的自动回车能力,完善自动化登录流程。
- 引入输入注入回退策略,提升不同系统环境下的自动填充成功率。
- 构建系统全面迁移至 Gradle Kotlin DSL(KTS),并统一依赖版本管理。
- 多页面国际化完善,并补充系统版本代号展示。
- CI 支持按 tag 后缀自动分发至 Google Play 多轨道并同步发布说明。
Full Changelog: https://github.com/magisk317/XposedSmsCode/compare/v3.1.1...v3.1.2
- 深度集成 Detekt 分析与自动修复流水线,持续收敛代码规范问题。
- 引入 Dependabot 自动化依赖维护,提升依赖更新效率与安全性。
- CI 构建并行化与权限声明完善,优化构建速度与流程安全。
- 修复设置布局重叠、Haze 首次绘制刷新等 UI 稳定性问题。
- 修正 PrefsProvider 访问策略与关键 Hook 引用问题。
Full Changelog: https://github.com/magisk317/XposedSmsCode/compare/v3.1.0...v3.1.1
- 移除敏感安装权限与应用内自动安装链路,适配 Google Play 合规要求。
- 重构更新引导逻辑,优先跳转商店或外部下载页。
- 重写主界面布局,优化 Edge-to-Edge 下的无缝模糊与转场动画体验。
- 修复 Telegram 换行渲染及系统输入 Hook 稳定性问题。
Full Changelog: https://github.com/magisk317/XposedSmsCode/compare/v3.0.7...v3.1.0
- 优化 Edge-to-Edge Insets 处理,减少内容与系统栏重叠问题。
- 更新单色启动图标,提升 Android 13+ 主题图标适配。
- 增强 CI 构建摘要与 Debug 产物上传能力,改进发布通知策略。
Full Changelog: https://github.com/magisk317/XposedSmsCode/compare/v3.0.6...v3.0.7
- 升级 compile/target SDK 至 36.1(Baklava)并下调 minSdk 至 24。
- 优化低版本
sendingUid反射路径,增强跨 ROM 兼容性。 - 重构输入注入器缓存与调度逻辑,改善自动填充性能与稳定性。
- 强化 PrefsProvider 访问控制和实体存储容错能力。
- CI 增加 symbols/mapping 上传,改进崩溃排查支持。
Full Changelog: https://github.com/magisk317/XposedSmsCode/compare/v3.0.5...v3.0.6
- 修复通知自动取消、Sticky 通知清理与线程泄漏相关问题。
- 重构
EntityStoreManager,增强空文件与异常数据处理能力。 - 新增验证码记录滑动删除与设置同步暴露能力。
Full Changelog: https://github.com/magisk317/XposedSmsCode/compare/v3.0.4...v3.0.5
- 新增 Telegram 群组入口并统一 README/应用内社区信息。
- 隐私政策改为在线查看模式,降低维护成本并保证内容实时更新。
- 集成 Google Play 发布工作流,优化分包构建与依赖版本。
Full Changelog: https://github.com/magisk317/XposedSmsCode/compare/v3.0.3...v3.0.4
- Material 3 Expressive 深度迁移:全面升级至
androidx.compose.material3:material3:1.5.0-alpha12。 - Kotlin for Compose 最佳实践:
- 全面应用属性代理 (
by),淘汰.value手写访问。 - 引入
@Immutable注解与不可变数据模型,极大提升重组性能。
- 全面应用属性代理 (
- UI/UX 增强:
- 主题切换支持点击坐标扩散动效。
- 列表项支持
animateItem()物理移动感动效。 - 文本交互增强,支持
SelectionContainer与basicMarquee。
- 稳定性修复:
- 彻底修复
SmsParseAction中的线程同步与属性重分配问题。 - 清理了所有不必要的非空断言 (
!!) 与弃用的 Material 3 API 警告。 - 优化了 JDK 25 下的原生访问权限配置。
- 彻底修复
Full Changelog: https://github.com/magisk317/XposedSmsCode/compare/v3.0.2...v3.0.3
- 修复了自动填写权限逻辑。
- 修复了剪贴板静默失败的问题。
Full Changelog: https://github.com/magisk317/XposedSmsCode/compare/v3.0.1...v3.0.2
- v3.0.1 版本发布,包含多处稳定性改进。
Full Changelog: https://github.com/magisk317/XposedSmsCode/compare/v3.0.0...v3.0.1
- UI 大版本更新:由 Android View 彻底迁移至 Jetpack Compose。
- 架构重构:采用 Single Activity 架构,引入 Compose Navigation。
- 自动化:集成 GitHub Actions CI 自动化构建流程。
Full Changelog: https://github.com/magisk317/XposedSmsCode/compare/2.5.1_53...v3.0.0
- 提升版本代码至 53。
Full Changelog: https://github.com/magisk317/XposedSmsCode/releases/tag/2.5.1_53
Note
之前的历史日志请参考原始项目:Original LOG-CN.md