跳到正文
发现
MiPushFramework:非 MIUI 设备的小米系统级推送
移动应用效率工具

MiPushFramework:非 MIUI 设备的小米系统级推送

在非 MIUI 的 Android 设备上以 com.xiaomi.xmsf 提供接近 MIUI 的小米系统级推送服务。

admin
发布于 2026-10-31 · 更新于 2026-11-01
浏览
2
访问
0
下载
0
版本
v1.1.2
平台
Android
该作品还没有经过官方审核。访问演示、下载或复制命令前,请自行确认来源可信。

详细介绍

项目简介

MiPushFramework 让非 MIUI / HyperOS 的 Android 设备也能使用接近 MIUI 的小米系统级推送。它以 com.xiaomi.xmsf 的形式提供系统推送服务:接入小米推送的应用把推送委托给统一的框架进程,而不必各自常驻后台运行 XMPushService。

项目当前开发分支最低支持 Android 9.0(API 28)。它不是小米官方项目,也不保证所有 ROM 或所有应用都能获得相同行为。

主要功能

  • 系统级推送代理:以 com.xiaomi.xmsf 包名保留外部应用访问的组件、Provider、Service、Intent 与桥接入口。
  • 分层运行时:长连接与协议栈(vendor/、pinned/)、平台无关的运行时契约与统计模型(core/)、shell 适配层分离。
  • 通知能力兼容:通知改写、分组、点击、按钮、VoIP、渠道兼容,以及焦点通知、HyperIsland 超级岛和 Android 实况通知。
  • hook 支持:通过 libxposed / LSPosed 入口提供 SystemUI 超级岛 hook 与焦点通知授权相关 hook。
  • 新平台通知语义:进度类推送在 Android 16+ 使用 Notification.ProgressStyle,低版本保留常规进度通知;非 MIUI/AOSP 路径避免泄漏 MIUI 私有 extras。
  • 管理界面:Compose 编写的管理器,支持应用注册、事件与通知记录、配置加载与运行时状态查看。
  • 诊断日志:LogBundleExporter 负责 JSONL 日志导出与旧文本日志清理,发行构建与 debug 构建采用不同日志策略。

安装与使用

发行包可从 Google Play、GitHub Releases 与 GitLab Releases 获取。Release 页面通常提供 normal 与 vc105 两类构建,区别在于目标应用向 XMSF 传递消息的方式:

版本 versionCode 传递方式 建议
normal 1003003000 bindService 默认首选,稳定性更好
vc105 105 startService 兼容旧路径或部分 bind 异常 ROM

小米推送 SDK 会根据 XMSF 的 versionCode 选择传递方式:versionCode >= 106 使用 bindService,versionCode == 105 使用 startService。建议先尝试 normal,若某些 ROM 或应用无法通过 bind 路径传递消息,再切换到 vc105。在 MIUI 上使用 normal 还有一个额外好处:重启后更不容易被系统还原成官方 XMSF。

注意事项

  • 涉及厂商 ROM、目标应用策略、系统权限和 Xposed / LSPosed 环境时,实际效果以设备验证为准。
  • 日志导出需要 root 权限:归档包含 /data/adb/lspd/log 等模块日志目录,非 root 设备在选择保存位置前即会被拦截。
  • 正式版不采集 root 诊断,需要完整导出请安装 debug 构建;发行构建不导出日志,只在设备上脱敏落盘并在设置页隐藏日志导出、保留天数与清理入口。
  • 项目以 GPL-3.0 许可证开源。

本作品整理自 GitHub 开源项目 magisk317/MiPushFramework,原作者 @magisk317,许可证 GPL-3.0。中文介绍由 AI 根据项目 README 整理,以原仓库为准。

更新记录

  1. v1.1.2当前版本

    <div align="center"> <a href="https://play.google.com/store/apps/details?id=io.github.magisk317.mipush"> <img src="https://img.shields.io/badge/Get%20it%20on-Google%20Play-01875F?style=for-the-badge&logo=googleplay&logoColor=white" alt="Get it on Google Play" height="28"/> </a> <a href="https://github.com/magisk317/MiPushFramework/releases/tag/v1.1.2"> <img src="https://img.shields.io/badge/Get%20it%20on-GitHub-181717?style=for-the-badge&logo=github&logoColor=white" alt="Get it on GitHub" height="28"/> </a> <a href="https://gitlab.com/magisk3171/MiPushFramework/-/releases/v1.1.2"> <img src="https://img.shields.io/badge/Get%20it%20on-GitLab-FC6D26?style=for-the-badge&logo=gitlab&logoColor=white" alt="Get it on GitLab" height="28"/> </a> </div>

  2. v1.1.1

    versionCode 20 / versionName 1.1.1;日志策略随构建类型调整;状态栏图标开关区分三方与系统应用;XMSF 运行时随分发产物交付;修复抖音 Hook 注册失效。

评论