type
status
date
slug
summary
tags
category
icon
password
网址
非原创,仅记录。
Macrodroid是一款强大的安卓自动化工具,允许用户通过自定义触发器、动作和约束条件实现手机自动化。它涵盖了多种传感器触发、系统设置调整、语音交互等功能,并支持Shell命令和Tasker插件。尽管部分功能受限于网络和谷歌服务,但其灵活性和广泛的应用场景使其成为安卓用户的得力助手。
我们常常被苹果手机上的快捷指令搞得垂涎三尺,手机上有了这个小物件可是让学习办公事半功倍啊。这次安卓君也有福利了,这款APP就叫做Macrodroid。
一、软件的逻辑
Macrodroid 是一款在安卓手机上通过自定义的方式对手机进行一些自动化控制的软件。
软件的逻辑是通过 触发 >>> 动作 + 约束条件 来进行控制。

触发器(Trigger)
顾名思义就是一个启动装置或步骤,它通常作为一种条件来决定后续的步骤是否该运行。例如手枪上的扳机实际上就是一个 Trigger,只有当扣动扳机时子弹就会被射出,否则就什么都不做。
而触发器的具体表现有很多种,比如传感器温度、消息通知、定位、日期时间等等,当我们在 MacroDroid 的宏编辑界面按下触发器的添加按钮时,就会看到 MacroDroid 为我们提供的所有触发器选项。
这款软件中基本囊括了安卓手机里的所有传感器来作为触发器,例如光线传感器、加速度传感器、GPS、NFC等,并且通过各种开放API实现了快速修改系统设置、语音播报,自定义通知、邮件收发、拍照、手势操作、日志记录等功能,最重要的是支持shell命令,和tasker插件调用和备份。如果获取Root权限将会有更灵活的功能。具备功能强大、界面清新、操作简单等多方面优势。
MacroDroid 的触发器会暗含一个条件判断逻辑,即默认情况下我们所编写的宏,只有触发器达到触发条件时才会运行;而 MacroDroid 也支持在一个宏之中添加多个触发器,那么在这个逻辑之上延伸就是只要有一个触发器达到了触发条件,那么这个宏就会运行并进行后续操作。

动作(Action)
就表示当触发器达到触发条件时我们要做什么,它是一种「动作」的概念,代指一个或多个操作步骤,比如在前一小节手枪的例子中,「射出子弹」就是对应着「扳机被扣动」被触发时的行为。
我们编写的自动化内容大部分都与动作有关,因为当中包含了我们需要去进行的步骤或操作,所以我们在使用 MacroDroid 过程中会将大量精力都放在包含若干操作的动作步骤上,在触发器的基础之上进一步明确我们想要实现的自动化操作。

约束(Constraint)
即限制之意,在 MacroDroid 中可以被视为是「一道锁」,不论是触发器、动作还是宏,我们都可以为其添加约束。由于约束的存在,在执行步骤前会判断当前的设备状态是否符合约束条件,也即只有在约束条件范围内才会「开锁」并运行,否则就不会触发。
需要注意的是,一个宏中绿色色块所表示的「约束」部分是作用于整个宏,如果仅仅只是针对单个触发器或者动作,那么就需要点击到具体步骤后单独添加。

二、变量
变量是本APP中用来存储,传递数据的量,可以作为触发条件和约束条件。变量可以嵌套,但要注意里外关系。局部变量只可一在同一个实例中使用。全局变量可以在全部实例中使用。
MacroDroid 用一个单独页面来集中展示。没有过多的命名限制,还支持中文命名,甚至还像编程一样为变量提供了可以指定的数据类型以便满足不同的存储需要;相应地,展示时也会直观地列出该变量的数据类型、默认值以及在哪个宏中被使用了等信息。

三、其他注意事项
触发、动作、限制,在每一个功能按钮长按或点击右上角问号图标都会显示帮助,编辑状态时长按也会弹出帮助。
功能按钮中标注有Root的需要获得Root权限,标注ADB的需要通过ADB工具打开Macrodroid的ADB权限,同时标注的任意条件达到就可以使用
若要保持应用后台长期有效,请在各品牌手机中锁定后台、忽略电池优化并打开自启动并开启必要权限、打开无障碍开关等相关设置.
参考来源:
- 作者:Jaylen.Mar
- 链接:https://blog.logtime.tk/article/macrodroid
- 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。
