Suche Tasker For Schleife wiederholt sich nicht?

Status
Dieses Thema wurde gelöst! Zur Lösung springen…
P

ProAndroider

Neues Mitglied
0
Hallo, ich habe das Problem das sich die Schleife nicht wiederholt sondern nur einmal ausführt. Mein Ziel ist es, dass bei der Variable SleepZeit immer im Minuten Takt 1 subtrahiert wird bis die Variable bei 0 ist. Was hab ich falsch gemacht?
 

Anhänge

  • Screenshot_20220209-175228_Tasker.png
    Screenshot_20220209-175228_Tasker.png
    128,8 KB · Aufrufe: 111
Empfohlene Antwort(en)
Dann sollte der Vorschlag mit dem Profil schon das Richtigte sein.
Ich versuche es dir nochmals genauer zu erklären.

Das Profil ist standardmässig deaktiviert und wird nur bei gebrauch aktiviert.

Um das Profil zu aktivieren ersetzt du in deinem Task SleepTimerTEST die komplette Schleife mit der Aufgabe Profil Status. Dort dann den Profilnamen eingeben oder mit der Lupe auswählen (z.B. Timer Zeit). Danach kommen deine restlichen Aufgaben. Diese werden direkt nach der Aufgabe Profil Status ausgeführt.

Sobald du das Profil aktiviert hast, läuft es nun unabhänig von irgenwelchen Task.
Das Profil startet jetzt in einem vorgegebenem Intervall (bei dir jede Minute) einen Task der dir die Timerzeit aktualisiert. Dieser wird parallel zu den anderen Task abgearbeitet wird.

In diesem Task wird dann bei jeder Ausführung 1 vom Variablenwert %SleepZeit abgezogen.
Damit das Profil nach Ablauf des Timers nicht unnötiger Weise weiterläuft. Deaktivierst du es wieder mit der Aufgabe Profil Status wenn der Wert der Variable auf Null ist (If %SleepZeit < 1).
Der Task sieht dann so aus
Code:
A1: Variable Substrahiere [
     Name: %SleepZeit
     Wert: 1
     Obergrenze: 0 ]

A2: Profil Status [
     Name: Timer Zeit
     setzen: Aus ]
    If  [ %SleepZeit < 1 ]

Wenn du einen Task zum Abbrechen des Sleep Timers hast, nicht vergessen auch das Profil zu deaktivieren.
 
Zuletzt bearbeitet:
Alle Antworten (10)
Bei einer For Schleife hast du mehrere Objekte die du abarbeitest. In der Variable %SleepZeit hast du aber wahrscheinlich nur einen einzigen Wert.
In deinem Fall musst du die Schleife mit einer Goto-Aktion machen.

Könnte dann so aussehen
Code:
<Schleife>
A1: Anker

A2: Variable Substrahiere [
     Name: %SleepZeit
     Wert: 1
     Obergrenze: 0 ]

A3: Warte [
     MS: 0
     Sekunden: 0
     Minuten: 1
     Std.: 0
     Tage: 0 ]

A4: Goto Aktion [
     Typ: Aktion Label
     Bezeichnung: Schleife ]
    If  [ %SleepZeit > 1 ]
 
@Mathens Danke für die schnelle Hilfe. Werde es ausprobieren.
 
Brauchst du die Variable %SleepZeit sonst noch irgendwo?
Falls du nur eine variable Wartezeit brauchst kannst du bei der Warte-Aktion, wenn du auf die gekreuzten Pfeile drückst, die Variable %input direkt verwenden.
 
Zuletzt bearbeitet:
Ich möchte eine SleepTimer bauen. Ich benutze die Variable %input auch direkt im Wait Befehl. Das soll nur als Anzeige dienen für die Verbleibende Zeit(auf einer Szene). Das bringt mich zum nächsten Problem. Ich hätte gerne, dass der Task weiter läuft während der Aktion, da dies wie gesagt nur als Anzeige auf einer Szene dient.
 
Wenn der restliche Task keine weiteren Warte-Befehle mehr hat oder For-Schleifen die zum Tell viel Zeit verbrauchen, würde ich die Schleife erst am Ende platzieren.
Ansonsten könntest du ein Profil erstellen mit dem Ereignis System>Tick mit einem Intervall von 60'000 MS. Im Task aktivierst du mit der Aufgabe Tasker>Profil Status dann das Profil.
Der Task des Profil könnte dann so aussehen
Code:
A1: Variable Substrahiere [
     Name: %SleepZeit
     Wert: 1
     Obergrenze: 0 ]

A2: Profil Status [
     Name: Timer Zeit
     setzen: Aus ]
    If  [ %SleepZeit < 1 ]
 
Beiträge automatisch zusammengeführt:

Danke, aber ich steuere es über ein Widget. Mit Home Menü und so weiter. Und leider kommen nach dem Wait Befehl nicht andere Dinge. Gibt es noch eine andere Möglichkeit?
 
Zuletzt bearbeitet:
ProAndroider schrieb:
Ich hätte gerne, dass der Task weiter läuft während der Aktion, da dies wie gesagt nur als Anzeige auf einer Szene dient.
ProAndroider schrieb:
Und leider kommen nach dem Wait Befehl nicht andere Dinge
Das wiedersprechen sich doch deine Aussagen oder ich verstehe dein Problem nicht.
 
Sorry nach dem Wait Befehl kommen noch Befehle.
 
Dann sollte der Vorschlag mit dem Profil schon das Richtigte sein.
Ich versuche es dir nochmals genauer zu erklären.

Das Profil ist standardmässig deaktiviert und wird nur bei gebrauch aktiviert.

Um das Profil zu aktivieren ersetzt du in deinem Task SleepTimerTEST die komplette Schleife mit der Aufgabe Profil Status. Dort dann den Profilnamen eingeben oder mit der Lupe auswählen (z.B. Timer Zeit). Danach kommen deine restlichen Aufgaben. Diese werden direkt nach der Aufgabe Profil Status ausgeführt.

Sobald du das Profil aktiviert hast, läuft es nun unabhänig von irgenwelchen Task.
Das Profil startet jetzt in einem vorgegebenem Intervall (bei dir jede Minute) einen Task der dir die Timerzeit aktualisiert. Dieser wird parallel zu den anderen Task abgearbeitet wird.

In diesem Task wird dann bei jeder Ausführung 1 vom Variablenwert %SleepZeit abgezogen.
Damit das Profil nach Ablauf des Timers nicht unnötiger Weise weiterläuft. Deaktivierst du es wieder mit der Aufgabe Profil Status wenn der Wert der Variable auf Null ist (If %SleepZeit < 1).
Der Task sieht dann so aus
Code:
A1: Variable Substrahiere [
     Name: %SleepZeit
     Wert: 1
     Obergrenze: 0 ]

A2: Profil Status [
     Name: Timer Zeit
     setzen: Aus ]
    If  [ %SleepZeit < 1 ]

Wenn du einen Task zum Abbrechen des Sleep Timers hast, nicht vergessen auch das Profil zu deaktivieren.
 
Zuletzt bearbeitet:
Hallo, gibt es eine Möglichkeit mir den Akku von den Airpods durch Tasker anzeigen zulassen?
 
Status
Dieses Thema wurde gelöst! Zur Lösung springen…

Ähnliche Themen

H
  • Hastenichgesehen
Antworten
2
Aufrufe
165
Hastenichgesehen
H
E
Antworten
5
Aufrufe
378
TinTin2030
TinTin2030
coolzero3389
  • coolzero3389
Antworten
18
Aufrufe
679
coolzero3389
coolzero3389
Zurück
Oben Unten