Angenommen, ich möchte einen Kontext erstellen, in dem die SSID einer WiFi-Verbindung entweder "ABC" oder "XYZ" ist.
Ich kann sehen, wo ich in der Lage bin, zwei Kontexte zu erstellen, aber es scheint UND-Logik zwischen den beiden zu erzwingen, also muss ich mich in der Reihenfolge der Wörter in der Nähe von 'ABC' und 'XYZ' befinden.
Wie kann man den Kontext so gestalten, dass er einer ist, nicht beide?
Oder können Sie wahrscheinlich "Umgekehrte" Bedingungen verwenden, um eine entgegengesetzte Aufgabe zu erledigen ?, z
Wenn Sie eine Aufgabe ausführen möchten, während eine WLAN-Verbindung besteht, oder wenn das Profil: A inaktiv ist, können Sie stattdessen Kontexte für "WLAN ist nicht verbunden" UND "Profil: A ist aktiv" einrichten, und zwar sowohl mit aktiviertem Kontrollkästchen "Invertiert" als auch mit eingerichtetem a Aufgabe, die das Gegenteil tut, wenn das möglich ist.
Dies funktioniert im Wesentlichen aufgrund von:
(A OR B) = NOT((NOT A) AND (NOT B))
quelle
Sie können Ihre Aktion von der Variablen "% condition = true" abhängig machen und dann zwei verschiedene Profile erstellen:
Ihr Profil: Wenn die Variable "condition" = true ist, dann ... und los geht Ihre Exit-Aufgabe
Wäre aber nett, wenn die Autoren den Tasker dafür verbessern würden ... :)
quelle
Posten Sie einfach meine Lösung für dieses Problem, wenn jemals jemand hierher kommt:
Erstellen Sie ein Profil für jede Bedingung in der Anweisung oder bei Eingabe von% Reasons + = 1 beim Beenden von% Reasons - = 1
Erstellen Sie ein Profil mit der Bedingung% Gründe> 0 und den erforderlichen Eintritts- und Austrittsaufgaben
Prost!
quelle
Sie müssen für jeden Kontext ein einzelnes Profil erstellen und es einzeln mit der Aktion koppeln.
quelle
Um mein Bluetooth-Headset zu unterstützen, war es mein Wunsch, Bluetooth einzuschalten, wenn ich in der Kontakte-App oder in einem Anruf bin. Ich kann es nur während eines Anrufs tun, kann dann aber nicht sicherstellen, dass mein Headset angeschlossen ist, bevor der andere Teilnehmer abhebt.
Keine der bereits geposteten Lösungen würde funktionieren. Wenn% BluetoothNeeded in Kontakten oder in Anrufen aktiviert ist, bedeutet dies, dass beim Starten eines Anrufs% BlueToothNeeded aktiviert ist. Wenn Kontakte als Hintergrund für Anrufe verwendet werden, wird% BlueToothNeeded deaktiviert und Bluetooth deaktiviert. Deaktivieren Sie mit der umgekehrten Funktion Bluetooth, wenn NICHT in Kontakte UND NICHT in Anruf, sondern Bluetooth aktiviert ist, da eine Beendigungsaufgabe fast funktioniert. Anscheinend bemerkt Tasker jedoch den kurzen Zeitraum, in dem Kontakte den Vordergrundstatus verlieren und der Anruf noch nicht gestartet wurde, und schaltet Bluetooth ein aus.
Also hier ist, was für mich funktioniert hat, basierend auf diesem Blog :
Dummy
mit der AktionTasks > Wait > 1ms
stateInCall
mit der BedingungState > Phone > Call > Type: Any
. Verknüpfen Sie es mit derDummy
Aufgabe.stateInContacts
mit der BedingungState > Application > Contacts
. Verknüpfen Sie es mit derDummy
Aufgabe.Bluetooth Needed
mit der BedingungState > Variable > Variable Value
. Setzen Sie Name auf%PACTIVE
, Op aufMatches
und Wert auf*,stateInCall,*|*,stateInContacts,*
. Gemäß den Tasker-Dokumenten enthält% PACTIVE eine durch Kommas getrennte Liste aktiver Profile, wobei die Liste auch mit einem Komma beginnt und endet, um den Abgleich zu erleichtern. Verknüpfen Sie dieses Profil mit einer aufgerufenen AufgabeBluetooth On
, bei der Bluetooth mithilfe derNet > Bluetooth > Set: On
Aktion aktiviert wird .Conditional Bluetooth Off
mit den folgenden Aktionen:%PACTIVE
nicht passt*,stateInCall,*|*,stateInContacts,*
Bluetooth Needed
Profil drücken und dann auswählenProperties
. Deaktivieren SieRestore Settings
.Bluetooth Needed
Profil, bis dieBluetooth On
Aufgabe in der rechten Spalte darunter angezeigt wird. Lang drückenBluetooth On
und wählenAdd Exit Task
, dann wählenConditional Bluetooth Off
.Conditional Bluetooth Off
Wartet 10 Sekunden, bevor überprüft wird, ob weder wahrstateInCall
nochstateInContacts
wahr ist. An diesem Punkt wird Bluetooth deaktiviert. Ansonsten lässt es Bluetooth auf und wenn beidestateInCall
undstateInContacts
Ausfahrt später wird er seine 10 Sekunden warten und wieder tun überprüfen.quelle