DingTalkPlus

钉钉效率增强模块

面向钉钉的第三方 Xposed 模块 · libxposed API 102 · Material Design 3

反馈问题

功能

功能 说明
消息防撤回 保留本机已收到、仍可读取的他人消息,并在气泡下方插入系统提示。同时拦截协议层同步通道的撤回推送,覆盖后台被杀后重新登录的场景。
已读回执拦截 拦截本机普通聊天的已读上报,对方看不到你的已读状态;支持按会话设置白名单。
阅后即焚留存 保存闪照/阅后即焚消息的明文到本地文件,焚毁后仍可查看。
拦截播放与点击上报 语音、图片、视频和网页链接不再向服务端上报「已播放/已点击」,本机界面状态保持正常;默认关闭。
禁止 DING 自动确认 不自动确认 DING,手动确认不受影响;默认关闭。
右滑回复 启用钉钉原生的滑动回复手势,从左往右滑消息进入引用回复;默认关闭。
自动已读 新消息到达自动标记已读,可选静默模式;默认关闭。
消息时间常显 会话列表与聊天页始终显示完整时间。
语音转发 语音消息可转发到其它会话。
消息检索 本地 SQLite 全文索引,支持全库搜索、撤回消息列表与离线归档导出。
模拟定位 地图选点、地址搜索、坐标直填,支持轨迹过渡与收藏;仅限 root 环境。
环境伪装 WiFi、蓝牙、BLE 信标、基站、传感器模拟;默认关闭。
拍照打卡替换 相册选图替换考勤拍照结果,含 EXIF 重写;默认关闭。
个性装扮破解 解锁个性装扮相关开关;默认关闭。
导航栏 tab 全解锁 解锁导航栏编辑能力,所有 tab 可自行增删。
快捷操作核心项解锁 让「+」面板的核心入口可配置。
「+」菜单项筛选 自定义「+」下拉菜单显示哪些条目。
底栏 tab 紧凑居中 按可见 tab 数量收窄底栏内容宽度,去掉底部阴影;默认关闭。
反检测 / 反 Root 隐藏模块自身痕迹与常见 Root 探测;仅限 root 环境。
设备指纹伪装 机型、品牌、序列号、Android ID 等;默认关闭。
平板模式 伪装为大屏设备;默认关闭。

未在设置页标注「待完善/待开发」的条目均为已实现功能。 各功能独立开关,保存后需重启钉钉生效。

兼容性

项目 当前适配目标
Android Android 8.0 及以上(API 26+)
钉钉 9.0.5,versionCode 1280(已验证)
框架 支持 libxposed API 102 的 LSPosed
root 定位、环境伪装、反检测类功能需要

钉钉版本更新后部分 hook 点可能失效,日志里会显示具体哪个组件安装失败。

安装与使用

  1. 安装 APK
  2. 在 LSPosed 管理器中启用「DingTalkPlus」
  3. 作用域勾选「钉钉」(com.alibaba.android.rimet)
  4. 强制停止钉钉并重新打开
  5. 长按钉钉首页右上角「+」,或「我的」→「设置」→「DingTalkPlus」

Magisk 模块(可选)

Release 里另有一个 DingTalkPlus-NotifPool.zip,是配套的 Magisk 模块。

作用:钉钉进程被杀后,模块的所有 hook 都不在了。这个模块用 root 权限 每几秒轮询一次通知栏,把钉钉通知的原文存进文件,供主模块在撤回时补录。

不装也能用 —— 只是「钉钉被杀后对方撤回」这个场景无法恢复原文。 其他功能不受影响。

安装:Magisk 管理器 → 模块 → 从本地安装 → 选 zip → 重启。

防撤回的能力边界

这部分写得详细一些,避免误解:

能恢复的情况

  • 消息已被模块记录(收到时立即落盘,或从钉钉数据库扫描到)
  • 钉钉进程被杀、消息以通知形式到达,且通知里包含原文

可能恢复不了的情况

  • 消息发出后极短时间内就被撤回,且尚未落盘
  • 钉钉把同一会话的多条消息合并成一条通知摘要(正文变成 [2条]xxx)
  • 钉钉自身数据库里内容已被改写

设计取舍:无法确定是哪条消息时,模块会放弃恢复,只保留 「对方试图撤回一条消息」提示。宁可漏,也不写入错误内容 —— 因为写错的原文会被存进归档,且不可逆。

注意事项

  • 不需要授予通知使用权(Magisk 模块用的是 root 轮询,不是监听服务)
  • 定位与打卡相关功能请勿用于考勤作弊
  • 防撤回等消息功能可能涉及他人隐私,请合法合规使用

联系作者

问题反馈:https://github.com/aiwandexiaoer/DingTalkPlus-Releases/issues

免责声明

本模块仅供技术研究与学习交流使用。

使用本模块可能违反钉钉用户协议,可能导致账号受限。因使用本模块产生的 任何后果(包括但不限于账号封禁、劳动纠纷、数据丢失)由使用者自行承担。

Releases

1-1.00.0

Stable

11/11/2026, 4:33:41 AM

DingTalkPlus

钉钉效率增强模块

面向钉钉的第三方 Xposed 模块 · libxposed API 102 · Material Design 3

反馈问题

功能

功能 说明
消息防撤回 保留本机已收到、仍可读取的他人消息,并在气泡下方插入系统提示。同时拦截协议层同步通道的撤回推送,覆盖后台被杀后重新登录的场景。
已读回执拦截 拦截本机普通聊天的已读上报,对方看不到你的已读状态;支持按会话设置白名单。
阅后即焚留存 保存闪照/阅后即焚消息的明文到本地文件,焚毁后仍可查看。
拦截播放与点击上报 语音、图片、视频和网页链接不再向服务端上报「已播放/已点击」,本机界面状态保持正常;默认关闭。
禁止 DING 自动确认 不自动确认 DING,手动确认不受影响;默认关闭。
右滑回复 启用钉钉原生的滑动回复手势,从左往右滑消息进入引用回复;默认关闭。
自动已读 新消息到达自动标记已读,可选静默模式;默认关闭。
消息时间常显 会话列表与聊天页始终显示完整时间。
语音转发 语音消息可转发到其它会话。
消息检索 本地 SQLite 全文索引,支持全库搜索、撤回消息列表与离线归档导出。
模拟定位 地图选点、地址搜索、坐标直填,支持轨迹过渡与收藏;仅限 root 环境。
环境伪装 WiFi、蓝牙、BLE 信标、基站、传感器模拟;默认关闭。
拍照打卡替换 相册选图替换考勤拍照结果,含 EXIF 重写;默认关闭。
个性装扮破解 解锁个性装扮相关开关;默认关闭。
导航栏 tab 全解锁 解锁导航栏编辑能力,所有 tab 可自行增删。
快捷操作核心项解锁 让「+」面板的核心入口可配置。
「+」菜单项筛选 自定义「+」下拉菜单显示哪些条目。
底栏 tab 紧凑居中 按可见 tab 数量收窄底栏内容宽度,去掉底部阴影;默认关闭。
反检测 / 反 Root 隐藏模块自身痕迹与常见 Root 探测;仅限 root 环境。
设备指纹伪装 机型、品牌、序列号、Android ID 等;默认关闭。
平板模式 伪装为大屏设备;默认关闭。

未在设置页标注「待完善/待开发」的条目均为已实现功能。
各功能独立开关,保存后需重启钉钉生效。

兼容性

项目 当前适配目标
Android Android 8.0 及以上(API 26+)
钉钉 9.0.5,versionCode 1280(已验证)
框架 支持 libxposed API 102 的 LSPosed
root 定位、环境伪装、反检测类功能需要

钉钉版本更新后部分 hook 点可能失效,日志里会显示具体哪个组件安装失败。

安装与使用

  1. 安装 APK
  2. 在 LSPosed 管理器中启用「DingTalkPlus」
  3. 作用域勾选「钉钉」(com.alibaba.android.rimet)
  4. 强制停止钉钉并重新打开
  5. 长按钉钉首页右上角「+」,或「我的」→「设置」→「DingTalkPlus」

Magisk 模块(可选)

Release 里另有一个 DingTalkPlus-NotifPool.zip,是配套的 Magisk 模块。

作用:钉钉进程被杀后,模块的所有 hook 都不在了。这个模块用 root 权限
每几秒轮询一次通知栏,把钉钉通知的原文存进文件,供主模块在撤回时补录。

不装也能用 —— 只是「钉钉被杀后对方撤回」这个场景无法恢复原文。
其他功能不受影响。

安装:Magisk 管理器 → 模块 → 从本地安装 → 选 zip → 重启。

防撤回的能力边界

这部分写得详细一些,避免误解:

能恢复的情况

  • 消息已被模块记录(收到时立即落盘,或从钉钉数据库扫描到)
  • 钉钉进程被杀、消息以通知形式到达,且通知里包含原文

可能恢复不了的情况

  • 消息发出后极短时间内就被撤回,且尚未落盘
  • 钉钉把同一会话的多条消息合并成一条通知摘要(正文变成 [2条]xxx)
  • 钉钉自身数据库里内容已被改写

设计取舍:无法确定是哪条消息时,模块会放弃恢复,只保留
「对方试图撤回一条消息」提示。宁可漏,也不写入错误内容 ——
因为写错的原文会被存进归档,且不可逆。

注意事项

  • 不需要授予通知使用权(Magisk 模块用的是 root 轮询,不是监听服务)
  • 定位与打卡相关功能请勿用于考勤作弊
  • 防撤回等消息功能可能涉及他人隐私,请合法合规使用

联系作者

问题反馈:https://github.com/aiwandexiaoer/DingTalkPlus-Releases/issues

免责声明

本模块仅供技术研究与学习交流使用。

使用本模块可能违反钉钉用户协议,可能导致账号受限。因使用本模块产生的
任何后果(包括但不限于账号封禁、劳动纠纷、数据丢失)由使用者自行承担。

Assets

2