Wie mit Tasker prüfen, ob eine App läuft

  • 8 Antworten
  • Letztes Antwortdatum
MeinNickname

MeinNickname

Dauer-User
1.610
Heute habe ich ein ganz spezielles Problem:

Ich habe mir ein Profil gebaut, das bei eingeschaltetem Display TeslaLED ein- bzw. ausschaltet, wenn ich das Gerät schüttele. So weit alles klar.

Seit kurzem habe ich nun NoLED installiert und festgestellt, dass ich die Taschenlampe immer wieder unbeabsichtigt einschalte, weil die Anzeige von NoLED als "Display ein" gewertet wird.

Wie kann ich denn nun Tasker überzeugen, dass die Taschenlampe nur zu aktivieren ist, wenn NoLED nicht läuft? NoLED hat kein Icon, so dass ich es nicht über "Apps" abgreifen kann. Ich weiß nur, dass der NoLED Prozess com.led.notify heißt...

Habt Ihr hierzu eine Idee?

Danke!
 
NoLED hat doch ein eigenes Plugin zum aktivieren/deaktivieren.
Das kannst Du in Deinen Task einbauen: wenn Schüttel-Profil aktiv, dann NoLED deaktivieren
 
Danke, dieses Plugin kenne ich.

Ich möchte es aber genau anders herum: Wenn NoLED aktiv ist, soll das Schütteln die Taschenlampe NICHT aktivieren, weil NoLED sehr häufig aktiv ist, aktiviert sich nämlich immer wieder ungewollt die Taschenlampe...
 
shell ausführen

ps | grep com.led.notify | tr -s " " | cut -d " " -f2

ergebnis in ne Variable z.b. %LED.

Variable nun abfragen.

if %LED > 1
(App läuft)

wenn com.led.notify nicht der richtige prozess ist, einfach in der shell mittels
ps
danach suchen.
 
  • Danke
Reaktionen: MeinNickname
@Erim

Super, danke, das hilft mir ein Stück weiter.

Leider funktioniert es aber immer noch nicht wie gewünscht... :(

Jetzt habe ich nämlich das Problem, dass der Prozess com.noled.notify offensichtlich im Hintergrund aktiv bleibt. Daher funktioniert die Taschenlampe jetzt gar nicht mehr, wenn NoLED einmal ein Event angezeigt hat...

Vielleicht muss ich mir dann doch einen anderen Auslöser als das Schütteln wählen.
 
versuch mal in der console:
cat /proc//$(pidof <app name>)/oom_adj*

schau dir das Ergebnis im eingeschalteten und ausgeschaltetem Zustand an.

bei mir war der ausgeschaltete Zustand immer 11.
müsstest du statt > 1
auf = 11 abfragen.
 
Hallo Erim,

Deinen Tipp habe ich gerade ausprobiert. Der ausgegebene Wert war "1".

NoLED ist aktuell nicht aktiv.

Die Abfrage bei aktivem NoLED dürfte aber unmöglich sein, weil ich NoLED durch die Anmeldung am Handy (Pattern) automatisch NoLED wieder deaktiviere. Oder sehe ich das falsch?

Vielleicht muss ich die Prüfung auf "<>1" ändern?
 
also ich nutze die app nicht, ich habe noled nur mal zum Test installiert.
Häkchen auf ein gesetzt und in der shell den befehl abgesetzt.
danach Häkchen auf aus und wieder der Befehl.

Du musst halt irgend einen Status finden der immer gleich ist.
und mit diesem dann abfragen.
alternativ könntest du auch noled killen, wenn nicht erwünscht, dann taucht es auch nicht unter
ps
auf.
 
Wenn Du NoLED aktivierst, heißt das nur, dass NoLED dauerhaft im Hintergrund prüft, ob z.B. neue SMS angekommen sind.

Der Status, den ich meine, ist dann, wenn tatsächlich die neue SMS da ist und NoLED dies anzeigt. Diesen Zustand kann ich nicht über das Terminal prüfen, weil NoLED automatisch wieder in den Hintergrund geht und weiter auf neue Ereignisse wartet, sobald ich den Bildschirm wieder aktiviere...

Aber ich glaube, ich habe es jetzt hinbekommen:
cat /proc//$(pidof com.noled.notify)/oom_adj* (Ergebnis wird in %LED gespeichert)

Bei der Taschenlampe habe ich im Profil eine zusätzliche Bedingung eingebaut:
Variable %LED equals 1

Ich muss noch ein wenig testen, aber es sieht jetzt recht gut aus...
 

Ähnliche Themen

R
Antworten
3
Aufrufe
87
holms
holms
M
Antworten
7
Aufrufe
212
MeinNickname
MeinNickname
B
Antworten
3
Aufrufe
321
hemue
H
junkyde
Antworten
5
Aufrufe
1.241
junkyde
junkyde
X
Antworten
5
Aufrufe
207
swa00
swa00
Zurück
Oben Unten