使用MacroDroid实现短信自动转发功能

使用MacroDroid实现短信自动转发功能
使用MacroDroid实现短信自动转发功能
Android 短信自动转发完整教程 | MacroDroid 转 Telegram / Email / ntfy – 下町三階建

如果你有一部 Android 备用机,或者需要把收到的短信验证码、银行通知实时转发到主力设备, MacroDroid 是目前最轻量、无需 root 的解决方案之一。 本文详细介绍三种转发方案——App 内置转发、Telegram Bot 和 ntfy 推送通知—— 你可以根据自己的使用习惯按需选择。


MacroDroid 是什么?

详细介绍参见:使用 MacroDroid 实现自动解锁手机的操作教程

MacroDroid 是一款 Android 自动化 App,类似 Tasker,但操作更直观、上手门槛更低。 它可以监听各种手机事件(收到短信、网络变化、定时等)并触发对应动作, 实现「收到短信 → 自动转发」这样的工作流只需几分钟配置。 免费版已足够完成短信转发,无需购买高级版。

在 Google Play 下载 MacroDroid Android 自动化 App


Android 短信自动转发的基本逻辑

整个自动化流程只有两步,逻辑非常简单:

  1. 触发器:收到短信(SMS Received)
  2. 动作:将短信内容转发到指定平台

MacroDroid 短信自动转发宏的触发器与动作设置界面截图

转发动作支持多种方式,本文介绍其中三种最实用的方案。


方案①:使用 MacroDroid 内置转发功能(最简单)

MacroDroid 本身内置了常见的转发动作,无需任何外部配置,是最快捷的方案。 在宏的动作列表中,可以直接找到以下三个选项:

  • 发送短信(SMS):转发到另一个手机号,注意会产生短信费用
  • 发送电子邮件:授权 Gmail 账号后即可使用,测试稳定可用
  • WhatsApp:转发到 WhatsApp 联系人(未实测)

MacroDroid 内置短信转发动作选项:短信、电子邮件、WhatsApp

适合人群:只需要将短信转发到邮箱,不想额外配置 Bot 或自托管服务的用户。 Gmail 授权后开箱即用,是最省事的选择。


方案②:通过 Telegram Bot 转发短信

如果你日常使用 Telegram,通过 Bot 接收转发短信是非常优雅的方案—— 消息直接出现在 Telegram 对话里,实时推送,无需单独安装其他 App。

适合人群

  • Telegram 的活跃用户
  • 只需要接收来自特定号码的部分短信(如验证码)
注意:此方案通过 URL 参数传递短信内容,不支持换行,长短信显示会连成一行。如果需要格式化显示,建议使用方案③。

配置步骤

步骤一:申请 Telegram Bot,获取 Token 和 chat_id。 详细方法参见:在甲骨文云搭建 Telegram RSS 机器人教程

步骤二:在浏览器中测试以下 URL,确认 Bot 能正常收到消息:

https://api.telegram.org/bot<TOKEN>/sendMessage?chat_id=<CHAT_ID>&text=测试消息

其中各参数含义:

  • <TOKEN>:申请 Bot 时获得的长字符串
  • <CHAT_ID>:数字格式的 chat id
  • text=:要发送的消息内容

步骤三:在 MacroDroid 中添加「HTTP 请求」动作。

MacroDroid 动作列表中选择 HTTP 请求选项的界面截图

在 HTTP 请求的配置页面中,填写以下内容:

MacroDroid HTTP 请求配置界面,填写 Telegram Bot API 地址和短信变量

URL 格式如下,将 {sms_message} 作为短信正文变量插入:

https://api.telegram.org/bot<TOKEN>/sendMessage?chat_id=<CHAT_ID>&text={sms_message}

点击 URL 输入框旁边的 「…」 按钮可以插入其他变量, 例如 {sms_sender_number}(发信人号码)、{time}(时间)等。

转发效果

MacroDroid 转发短信到 Telegram Bot 的实际效果截图,显示短信内容但不支持换行

转发效果如上图,内容完整,实时推送,唯一的限制是换行无法生效, 所有内容会连成一行显示。


方案③:通过 ntfy 推送通知转发短信(格式最完整)

ntfy 自托管推送通知服务 Logo 与简介

ntfy 是一个开源的推送通知服务,支持自托管(Self-hosted), 可以在任意设备上通过订阅主题接收推送。 与 Telegram 方案相比,ntfy 方案支持换行, 可以将发信人号码、时间、短信内容等信息分行显示,格式更整洁。

适合人群

  • 不使用 Telegram,或偏好独立推送服务的用户
  • 有自托管需求,希望数据不经过第三方服务器
  • 需要从多个手机号接收短信,并关注时间、发信人等完整信息

配置步骤

步骤一:准备 ntfy 服务(可使用官方的 ntfy.sh,或参考以下教程自托管)。

参考:使用自搭建的 ntfy 同步 iOS 的短信到 Android

步骤二:在 MacroDroid 中添加「HTTP 请求」动作,按以下两个部分配置。

第一部分——URL 设置:填写 ntfy 订阅主题的完整地址。 若你的 ntfy 开启了 Basic Auth 认证,可在此处填写「基本授权」信息。

MacroDroid HTTP 请求设置 ntfy 订阅主题 URL 与 Basic Auth 基本授权配置截图

第二部分——正文(Body)设置:切换到正文标签页, 在此处自由定义转发消息的格式,支持换行, 可插入 {sms_sender_number}{sms_message}{time} 等变量。

MacroDroid ntfy HTTP 请求正文配置,插入短信变量并支持换行格式设置截图

转发效果

MacroDroid 通过 ntfy 转发短信的实际推送效果截图,显示发信人、时间、正文并支持换行

效果非常完整:发信人号码、接收时间、短信正文分行清晰显示, 格式可完全自定义,是三种方案中信息最丰富的一种。


三种方案对比总结

方案配置难度支持换行适合场景
① App 内置(Email)⭐ 最简单✅ 支持只需转到邮箱,不想额外配置
② Telegram Bot⭐⭐ 较简单❌ 不支持Telegram 用户,仅需接收验证码
③ ntfy 推送⭐⭐⭐ 需自托管✅ 支持需要完整格式、多号码、自托管

至此,之前一直使用的旧方案正式退休。 MacroDroid 将短信转发的配置从独立 App 整合到了一个自动化工具中, 配合其他宏一起管理,更加统一高效。

分享或订阅:
🧡 喜欢我的内容?欢迎点击 订阅 RSS Feed 获取最新文章更新。