Tasker und Touch Control

  • 2 Antworten
  • Letztes Antwortdatum
laborskript

laborskript

Dauer-User
292
Hi Leute.

Zur Ausgangssituation:
Auf meinem Nexus 4 nutze ich die App Touch Control (TC), mit der ich das Display mittels Doppel-Tippen aufwecken kann und mittels Sweep in den Schlafmodus bringe.

Jetzt gibt es ein Problem, wenn ich das N4 in der Hosentasche habe, weil TC dort manchmal reagiert und mir das Handy in der Tasche weckt.
Ich hatte eine Zeit lang die Sensibilität des Doppel-Tippens so eingestellt, dass das nicht mehr passiert, allerdings reagiert TC dann zum Teil sehr träge, wenn ich das Fon tatsächlich mit dem Doppeltipp wecken will.

Deshalb wollte ich TC mittels Tasker deaktivieren, wenn das Fon in der Hosentasche ist.
Dazu soll der Näherungssensor herhalten und ein Shell-Script, mit dem man TC aktivieren und deaktivieren kann (die App beenden/killen/starten bringt nichts, da tut sich nichts).

Das Profil sieht so aus:

Context: Proximity Sensor

Task:
- Wait 4 Sec (einfach, um eine gewisse Übergangszeit zu haben)
- Run Shell Command echo disable > /proc/ponury/status If %SCREEN ~ off

Exit-Task:
- Run Shell Command echo ensable > /proc/ponury/status

Eigentlich funktioniert dieses Profil wie gewünscht.

Leider aber nur temporär.
Nach einiger Zeit reagiert TC einfach nicht mehr, obwohl in der TC-App selbst zu sehen ist, dass es aktiviert ist. Ich kann TC dann auch manuell deaktivieren und neu aktivieren, TC funzt einfach nicht mehr. Nur ein Reboot hilft.

Ich vermute, dass dies am Exittask liegt. Wenn ich es richtig verstanden hab, dann gucken Exittasks nach dem Kontext, und wenn der nicht mehr gegeben ist, dann startet der Exittask. In meinem Fall also, wenn nichts mehr am Näherungssensor anliegt.

Das Problem dabei wäre dann aber, dass der Exittask ja in einer Art Dauerschleife läuft, weil man ja immer mal wieder über den Sensor kommt, also den Kontext startet und den Sensor dann aber auch wieder frei gibt, den Kontext also beendet und damit der Exittask startet(?).
Ich vermute, dass dies mein Problem auslöst, dass also dauernd die "enable-shell" gestartet wird und dadurch irgendwann TC nicht mehr richtig funktioniert und nur ein Reboot hilft.

Diese Erklärung ist jetzt aber nur eine Vermutung und kann natürlich kompletter Unsinn sein.
Falls ihr eine bessere Erklärung und vor allem einen Tipp habt, mit dem ich mein Vorhaben richtig umsetzen kann, dann würde ich mich sehr freuen.

Vielen Dank im Voraus.
 
Hi laborskript, ich habe jetzt erst deine PN bei den xda-developers gelesen... Ob deine Vermutung zustimmt kann ich leider nicht sagen.

Um allerdings zu verhindern, dass im Exit-Task wiederholt der Shell-Befehl ausgeführt wird (was eventuell dazu führen könnte, dass TC sich "aufhängt"), könntest du eine Tasker-Variable nutzen, welche je nach Status des Moduls gesetzt wird:
  • Wird TC durch die erfüllte Bedingung deaktiviert, Variable auf 0 setzen
  • Im Exit-Task einstellen, dass der Shell-Befehl nur dann ausgeführt wird, wenn die Variable auf 0 ist (Tasker zuvor also wirklich deaktiviert wurde). Die Variable in diesem Fall dann auf 1 setzen.

Wenn du dich in Tasker etwas umschaust, solltest du mit der Variablen eigentlich zurecht kommen. Solltest du weitere Tipps benötigen, kannst du dich ja hier im Thread melden.
 
  • Danke
Reaktionen: laborskript
Kann es sein, dass der Shell-Befehl zum Aktivieren nur funktioniert, wenn der Service vorher deaktiviert wurde?

Habe versucht, TC nach dem Boot per Tasker aktivieren zu lassen, allerdings hat das nicht geklappt.
 

Ähnliche Themen

b0mb
  • b0mb
Antworten
1
Aufrufe
139
b0mb
b0mb
M
Antworten
0
Aufrufe
42
maxpd
M
F
Antworten
0
Aufrufe
82
fox3k
F
Zurück
Oben Unten