Task bei Power on und Power off

S

Schpacko

Neues Mitglied
1
Hallo,
als absoluter Beginner, habe ich in Tasker 2 Profile erstellt.
Hintergrund:
Ich baue ein Tablet in mein Auto, das Tablet wird mit dem USB Port des versteckten Autoradio geladen.
-------
Profil 1-
Power Alle - task "aktiv" -> Airplanemode disable + App Carmode on

Profil 2 -
Nicht Power alle - task "aus" -> App Carmode off + Airplane mode enabled + (noch 2 Appkiller) + greenify plugin

Das Problem ist nun - Beim Zünden setzt die Stromzufuhr vom Radio (auch vom USB Port) kurz aus mit dem Egebnis, daß die Profile durcheinander kommen.
Ich habe jetzt bei beiden Profilen im Task ein Wait Befehl mit 5 Sekunden vorangesetzt. Funktioniert auch im Trockentest, aber ich glaube die Lösung ist äusserst unelegant. Hat jemand eine besser Lösung um Tasker eindeutig klarzumachen, daß erst Profil 2 aktiv wird, wenn Profil 1 länger aktiv war (so 4-5 sek.) und umgekehrt.
Mit Variablen setzen bin ich nicht weitergekommen, da ich keine Ahnung hatte was ich da mache und wo ich was eingeben soll.
Tasker sollte natürlich im Ruhemodus nicht unendlich irgendetwas abfragen müssen.
 
Du könntest es so versuchen:
Code:
Profile: Power Ein (10)
    State: Power [ Source:Any ]
Enter: Aktiv (11)
    A1: JavaScriptlet [ Code:var t = local('caller1');

if ( t == "profile=enter:Power Ein" ) {
   var prof = {
      "Other" : getEnabledProfile('Aus'),
      "OtherName" : "Power Aus"
     }
} else if ( t == "profile=enter:Power Aus" ) {
   var prof = {
      "Other" : getEnabledProfile('Ein'),
       "OtherName" : "Power Ein"
     }
} else {
alert("error "+t)
exit()
}

if ( prof.Other == true ) {
enableProfile(prof.OtherName, false)
//flash("anderes profil deaktivieren")
} // Anderes Profil deaktivieren falls aktiv

activateOther( prof.OtherName )

exit();

function activateOther( which ) {
//
var newtime = parseInt(global('TIMES')) + 8

while ( newtime > parseInt(global('TIMES')) ) { }
// stattdessen evtl. besser wait( millisekunden )
enableProfile(which, true)

}

function getEnabledProfile( which ) {

var profs = global("PENABLED").split(",")
var myarr = []

  for (var a = 0 ; a < profs.length;a++ ) {
   if ( profs[a] == "Power Ein" || profs[a] == "Power Aus") {
   myarr.push(profs[a])
  }
}
myarr.sort()
if ( which == "Ein" ) {
  if ( myarr[0] == "Power Aus" ) return true;
   else return false;
  }
if ( which == "Aus" ) {
  if ( myarr[1] == "Power Ein" ) return true;
   else return false;
  }
} Libraries: Auto Exit:Off Timeout (Seconds):45 ]
    A2: Notify Cancel [ Title:Task aktiv Warn Not Exist:Off ]
    A3: Notify [ Title:Task aktiv Text: Icon:null Number:0 Permanent:Off Priority:3 ]

Profile: Power Aus (12)
    State: Not Power [ Source:Any ]
Enter: Nicht aktiv (13)
    A1: JavaScriptlet [ Code:var t = local('caller1');

if ( t == "profile=enter:Power Ein" ) {
   var prof = {
      "Other" : getEnabledProfile('Aus'),
      "OtherName" : "Power Aus"
     }
} else if ( t == "profile=enter:Power Aus" ) {
   var prof = {
      "Other" : getEnabledProfile('Ein'),
       "OtherName" : "Power Ein"
     }
} else {
alert("error "+t)
exit()
}

if ( prof.Other == true ) {
enableProfile(prof.OtherName, false)
//flash("anderes profil deaktivieren")
} // Anderes Profil deaktivieren falls aktiv

activateOther( prof.OtherName )

exit();

function activateOther( which ) {
//
var newtime = parseInt(global('TIMES')) + 8

while ( newtime > parseInt(global('TIMES')) ) { }
// stattdessen evtl. besser wait( millisekunden )
enableProfile(which, true)

}

function getEnabledProfile( which ) {

var profs = global("PENABLED").split(",")
var myarr = []

  for (var a = 0 ; a < profs.length;a++ ) {
   if ( profs[a] == "Power Ein" || profs[a] == "Power Aus") {
   myarr.push(profs[a])
  }
}
myarr.sort()
if ( which == "Ein" ) {
  if ( myarr[0] == "Power Aus" ) return true;
   else return false;
  }
if ( which == "Aus" ) {
  if ( myarr[1] == "Power Ein" ) return true;
   else return false;
  }
} Libraries: Auto Exit:Off Timeout (Seconds):45 ]
    A2: Notify Cancel [ Title:Task inaktiv Warn Not Exist:Off ]
    A3: Notify [ Title:Task inaktiv Text: Icon:null Number:0 Permanent:Off Priority:3 ]
 
Zuletzt bearbeitet:
  • Danke
Reaktionen: Schpacko
Ach du Schreck.
Erst mal vielen Dank für Deine Mühe.
Ich werd mal versuchen dein Script umzusetzen.
 

Ähnliche Themen

M
Antworten
27
Aufrufe
930
rtwl
rtwl
j3sk0
  • j3sk0
Antworten
2
Aufrufe
227
j3sk0
j3sk0
F
Antworten
7
Aufrufe
258
holms
holms
Zurück
Oben Unten