假设我要创建一个WiFi连接的SSID为“ ABC”或“ XYZ”的上下文。

我可以在哪里创建2个上下文,但它似乎可以强制执行两者之间的AND逻辑,因此为了使单词我必须同时靠近“ ABC”和“ XYZ”。 br />

#1 楼

在WiFi Connected上下文中将SSID指定为ABC/XYZ
如果您连接到ABC或XYZ,将激活上下文,

参考:http://tasker.dinglisch.net/userguide/en /matching.html

评论


解决了这个特定的问题,但没有解决实际问题

– Endolith
2014年11月10日20:25

#2 楼

还是可以使用“反转”条件执行相反的任务?例如,如果要在连接WiFi或配置文件A处于非活动状态时运行任务,则可以设置上下文对于“ WiFi断开连接”和“配置文件:A处于活动状态”,都选中了“反转”复选框,并设置了一个相反的任务(如果可能)。

之所以如此,原因是

(A OR B) = NOT((NOT A) AND (NOT B))

评论


这个答案很好,因为它更通用。也就是说,它适用于“ Wifi Connected”以外的上下文类型。例如,我想创建一个配置文件,以使其在手机对接或连接到Pebble手表时将其置于静音模式。最简单的方法是创建“未连接到Pebble并且未停靠”的配置文件,该配置文件在进入时禁用静默模式,并在退出时启用静默模式。 DeMorgan的法律FTW。

–劳伦斯·贡萨尔维斯(Laurence Gonsalves)
13年4月22日在19:40

#3 楼

只要有人在这里发布我对这个问题的解决方案:

在or语句中为每个条件创建一个配置文件
输入%Reasons + = 1
退出%Reasons -= 1

创建一个条件为%Reasons> 0的配置文件,并执行所需的进入和退出任务

加油!

#4 楼

您可以使操作取决于变量“%condition = true”,然后创建两个不同的配置文件:


配置文件a:将条件设置为“ true”
配置文件b:将条件设置为“ true”

您的配置文件:如果变量“ condition” = true则...然后执行退出任务

,但是如果作者愿意的话为此增强工作人员::)

评论


当通过配置文件a和b同时将条件设置为true或false时,此方法会引起问题。例如,我想在通话或“联系人”应用程序中打开蓝牙。我在两种情况下都设置%BluetoothNeeded = 1,并在两种情况下均退出时清除。当我在通话中时,“联系人”应用程序会变成背景,并且通常会暂停以节省内存,这会清除%BluetoothNeeded,因此蓝牙会关闭,从而在通话过程中切断了我的蓝牙耳机。

–冬天的龙女
2014年8月9日15:10



#5 楼

您将需要为每个上下文创建一个配置文件,并将其分别与操作配对。

评论


嗯,这意味着我真的无法执行退出任务吗?

–僵尸
2011年3月11日17:07

#6 楼

为了支持我的蓝牙耳机,我的愿望是在“联系人”应用程序或通话中打开蓝牙。我只能在通话中进行操作,但是之后我无法确保在对方接听之前已连接好耳机。

已经发布的解决方案都无法使用。在“联系人”或通话中设置%BluetoothNeeded表示打开通话时,它将%BlueToothNeeded设置为打开,但是当Contacts成为通话背景时,它将%BlueToothNeeded设置为关闭,并且蓝牙关闭。使用逆操作,当“不在联系人中”和“不在呼叫中”时关闭蓝牙,但由于退出任务几乎可以工作而打开蓝牙,但是显然塔斯克注意到“联系人”失去前台状态并且呼叫尚未开始并变为蓝牙时的短暂时间。关闭。

基于此博客,这对我有用:


创建一个名为Dummy的任务,其动作为Tasks > Wait > 1ms

/>使用条件stateInCall创建一个名为State > Phone > Call > Type: Any的配置文件。将其链接到Dummy任务。
创建一个名为stateInContacts的配置文件,条件为State > Application > Contacts。将其链接到Dummy任务。
创建一个名为Bluetooth Needed的配置文件,条件为State > Variable > Variable Value。将Name设置为%PACTIVE,将Op设置为Matches,将Value设置为*,stateInCall,*|*,stateInContacts,*。根据Tasker的文档,%PACTIVE包含一个以逗号分隔的活动配置文件列表,该列表也以逗号开头和结尾,以使匹配更加容易。将此配置文件链接到一个名为Bluetooth On的任务,该任务会使用Net > Bluetooth > Set: On Action打开蓝牙。
使用以下操作创建一个名为Conditional Bluetooth Off的任务:

任务>等待> 10秒>如果> %PACTIVE*,stateInCall,*|*,stateInContacts,*不匹配

网络>蓝牙>设置:关
任务>结束If


长按Bluetooth Needed配置文件然后选择Properties。取消选中Restore Settings
快速按一下Bluetooth Needed配置文件,直到Bluetooth On任务出现在其右下方。长按Bluetooth On并选择Add Exit Task,然后选择Conditional Bluetooth Off

Conditional Bluetooth Off将等待10秒钟,然后再次检查stateInCallstateInContacts都不为真,此时它将关闭蓝牙。否则,它将使蓝牙保持打开状态,并且当stateInCallstateInContacts稍后退出时,它将等待10秒钟,然后再次检查。