tasker 中文文档 下载 App

Tasker Variables 变量详解 系统变量 用户变量 本地变量 全类型参考

变量是什么

Tasker 的变量以 % 开头,是整个自动化系统的数据管道。你可以把它理解成"带状态的标签"——在 Task A 里设置一个变量值,在 Task B 或另一个 Profile 里读取这个值做条件判断。

变量的存在让 Tasker 从"条件 → 动作"的单向触发器,进化成了真正有"记忆"的自动化系统。没有变量,Tasker 只能做线性的 if-then;有了变量,就能做状态机、计数器、条件分支。

三种变量类型

类型命名规则可见范围设置者生命周期
系统变量%BATT、%TIME、%LOC 等所有 Task 可读Tasker 内置(自动更新)随系统变化实时更新
全局用户变量%MyVar、%WiFiName(大写开头,非全小写)所有 Profile/Task 可读可写用户通过 Variable Set 等 Action存 XML / tasker.db,重启后保留
局部变量%myvar、%num(全小写)仅当前 Task 内部可见当前 Task 的 Variable Set / Perform TaskTask 结束即销毁

系统变量一览(常用)

Tasker 内置了大量系统变量,覆盖几乎所有手机状态:

完整列表见 Tasker 菜单 → 帮助 → 变量列表。

全局变量 vs 局部变量

当你需要在多个 Task 之间传递信息时,用全局变量。当变量只在当前 Task 内部使用(比如循环计数器)时,用局部变量。

局部变量(全小写)的好处:

变量设置与读取

设置变量值

Variable Set 动作是最常用的方式:

变量在字符串中的用法

在任何 Action 的文本参数中写入变量名,Tasker 会自动替换为变量的当前值:

变量作为条件

变量最强大的用法是作为 Profile Context 或 Action 的条件。

示例:只有当电量低于 15% 并且 正在使用蜂窝数据时,才触发"省电模式" Profile:

State → Variable Value → %BATT < 15
AND
State → Variable Value → %NETTYPE not match WIFI

或者在 Task 的某个 Action 上设置条件:只有 %FirstRun 为 1 时才执行"首次引导弹窗"这个 Action。

变量索引

变量名结尾带数字的变量(如 %LOC3、%Arr1、%Arr2)可以构成数组结构。配合 Variable Split 和 Variable Join 动作,Tasker 可以处理 CSV/列表数据。

变量调试

变量值不更新?先查这三件事:

  1. 变量名拼写:Tasker 变量名区分大小写,%batt ≠ %BATT
  2. 执行顺序:是不是在设置之前就读取了?
  3. 日志查看:Tasker 菜单 → 数据 → 运行日志,能看到每个 Action 执行后的变量值

更多排查技巧见 变量调试。