Tasker im Auto: Musik sofort nach der Losfahrt

Tasker im Auto: Musik sofort nach der Losfahrt

Dominik Bärlocher
Dominik Bärlocher
Zürich, am 09.04.2020
Leser Kurt fragt: Wie kann ich mit Tasker Musik im Auto abspielen? Was als harmloses kleines Experiment begonnen hat, hat in einen Strudel von Old-School-Technologie und Bleeding Edge geführt.

Mail von Leser Kurt: Er will nicht mehr jedes Mal den Audioplayer seines Auto-Tablets manuell aktivieren. Seine Autoroutine ist immer dieselbe: Einsteigen, Auto anlassen, Poweramp auf seinem FCC-Launcher aktivieren, losfahren.

«Mein Ziel ist es, wenn das Radio hochfährt, der Tasker gleichzeitig Poweramp startet.»
Kurt, per Mail

Das Problem ist leicht lösbar. Zur Hälfte. Denn wo Android Apps immer gleich funktionieren, hat sich die Autoindustrie noch nicht auf Standards geeinigt. Autos mit Baujahr vor 2016 haben noch keine Schnittstelle für Android Auto verbaut. Neuere Autos haben eigene Software, die zuerst instruiert werden muss, auf Android Auto zu wechseln.

Wenn du mit Import-Smart-Tech aus China arbeitest, dann ist die Wahrscheinlichkeit hoch, dass du nicht mit Android Auto zu tun hast, sondern mit dem FCC Launcher. Das hat rechtliche Gründe, da Google und seine Services in China entweder zensiert oder verboten sind. Darum hast du Dinge wie Kurts Tablet-Ding aus China, das sein Autoradio ersetzt. Oder ein Handy. Oder ein Tablet. Sprich: Es gibt eine Unzahl Variablen hier, die nicht exakt auf deine Smart Tech oder dein Auto zutrifft.

Fakt ist aber, dass Android Android ist und Android bleibt. Daher lasse ich die Eigenheiten von Autos und russischen Launchern aus und fokussiere mich auf die Automatisierung mit einer App: Tasker.

Tasker, Android Auto, FCC Launcher, Poweramp und Spotify… oh my

Wenn du die Frage «Kann Tasker...» stellst, dann kann ich dich nach diesen zwei Wörtern unterbrechen und sagen: «Ja». Grundsätzlich kann Tasker alles. Die Frage ist in der Regel nur: «Wie?». Denn obwohl Tasker viele Optionen out of the box bietet, müssen wir doch recht oft mit fremden Programmschnittstellen, API genannt, interagieren.

*Tasker**: Die Android-App für Life-Hacker
Hintergrund

Tasker: Die Android-App für Life-Hacker

Tasker arbeitet immer nach demselben Schema: Wenn, dann. Oder in Programmiersprache: if/then. Sprich, wenn Software-Event A geschieht, dann führt Tasker Automatismus B aus.

  • Events heissen in Tasker «Profiles»
  • Automatismen heissen in Tasker «Tasks»

Tasker ist daher auch der Dreh- und Angelpunkt des vorliegenden Projekts. Hardwareseitig teste ich mit folgendem Equipment:

X2 Pro (128 GB, Neptune Blue, 6.50 ", Dual SIM, 64 Mpx, 4G)
realme X2 Pro (128 GB, Neptune Blue, 6.50 ", Dual SIM, 64 Mpx, 4G)
Tab M10 Plus TB-X606F (10.30 ", 64 GB, Schwarz)
194,30
Lenovo Tab M10 Plus TB-X606F (10.30 ", 64 GB, Schwarz)

Softwareseitig verwende ich folgende Apps. Die Apps, die kosten, habe ich erworben und arbeite mit der Bezahlversion:

Nach dem Abschluss der Programmierarbeiten teste ich die Setups auf zwei Fahrzeugen:

Die Fahrzeuge sind so gewählt, dass sie softwaremässig möglichst weit voneinander entfernt liegen. Beim Ford kann ich das Tablet oder das Smartphone einstecken und mit Android Auto arbeiten. Beim Dodge muss ich gegen UConnect kämpfen. Die Software kann zwar auch was, ist aber seit Jahren nicht mehr aktualisiert worden und daher fehlen moderne Schnittstellen.

In diesem Projekt werde ich in jedem halbwegs modernen Auto mit einem zumindest halb-smarten Audiosystem das Abspielen von Poweramp- oder Spotify-Musik beim Losfahren automatisieren. Du brauchst ein Auto, das entweder Musik per Bluetooth vom Handy abspielen kann oder mit Kabel Android Auto aufrufen kann.

Ferner werde ich bei diesem Projekt die Fahrsicherheit in Betracht ziehen. Das kommt vor allem bei der Bluetooth-Verbindung zwischen Auto und Smart Device zum Tragen. Die Idee ist klar. Die Interaktion mit dem Phone oder dem Tablet soll möglichst minimiert werden.

Vor dem Code kommt das Verständnis

Bevor wir loslassen, brauchen wir Verständnis. Namentlich müssen wir die schwarze Magie der Auto-Software entschlüsseln, sowie etwas mechanisches Verständnis für Autos schaffen. Denn im Kontext der Funktionsweise Taskers müssen wir das Profil finden, also das «if»-Statement im «if/then». Dazu müssen wir aufschlüsseln, was genau mit einem Auto geschieht, denn das If kommt aus dem Auto.

Klassisch: Auto mit Zündschlüssel

Es ist möglich, ein altes Auto mit einem Zündschlüssel mit einem modernen Audiosystem zu versehen. Wenn der Motor ausgeschaltet ist, dann wird kein System mit Strom versorgt. Die Uhr ist vielleicht digital, dann ist da eine kleine Batterie. Aber auch bei einer analogen Uhr: Batterie.

Wenn du den Zündschlüssel drehst, dann kommst du zuerst auf ACC. Das ist der Strommodus, der die Elektronik des Autos mit Strom aus der Batterie versorgt. Danach folgt der ON-Modus, wo der Motor gezündet wird. Zwischen ACC und ON wird der Stromfluss zum Audiosystem noch einmal unterbrochen, da der Strom verwendet wird, um den Motor in Gang zu bringen.

Halb-Smart: Bluetooth auf dem Dodge Charger

Testauto: Der Dodge Charger...
Testauto: Der Dodge Charger...
... mit UConnect
... mit UConnect

Der Dodge Charger funktioniert anders. Die Zündung und das Zusammenspiel des Motors mit der Bordelektronik funktioniert aber genau gleich. Kein Strom wenn Motor aus, Strom und Startvorgang wenn Zündung.

Das Audiosystem hingegen kann ich aber nicht via Kabel ansteuern. Jedenfalls nicht in irgendeiner nützlichen Art und Weise. Am vernünftigsten und einfachsten ist die Arbeit mit Bluetooth. Sobald der Computer des Autos hochgefahren ist, verbindet er sich via Bluetooth mit dem Smart Device. Sprich: deinem Smartphone oder Tablet. Ich kann jetzt telefonieren und via Audio-Quelle das Auto als eine Art Bluetooth Speaker verwenden. Der Unterschied zu einem normalen Bluetooth Speaker ist vernachlässigbar.

Smart: Android Auto auf dem Ford F-150

Testauto: Ford F-150 Shelby…
Testauto: Ford F-150 Shelby…
...mit Ford Sync 3
...mit Ford Sync 3

Wenn du den Ford anlässt, dann startet der Computer mit der Zündung. Wenn der Motor stillsteht, dann wird der Computer nicht mit Strom versorgt. Das würde die Batterie über Nacht entladen. Das 2.8-Tonnen-Viech fährt am kommenden Tag nirgendwohin. Ein Minicomputer wird mit Strom versorgt, der sich im Wesentlichen die Uhrzeit merkt.

Nach der Zündung und dem Start des Computers muss ich manuell auf dem Screen Android Auto einschalten. Das ist ein Icon auf dem Touch Screen. Sobald ich dieses Icon gedrückt habe, übernimmt die Software auf dem Smartphone und stellt sie auf dem Bildschirm des Trucks dar.

Der Aufbau des Projekts in Tasker

Aus diesen drei Funktionen können wir drei «If» Statements ablesen. Wenn du eines dieser Projekte nachmachen willst, dann kannst du einfach via CTRL/⌘+F nach dem Profil und seiner Nummer, also «Profile #1» oder so, suchen.

  • Profile #1: If Stromversorgung…
  • Profile #2: If Bluetooth verbunden...
  • Profile #3: If Android Auto aktiviert…
  • Profile #4: If FCC Launcher aktiviert...

Diese werden im Profiles Screen definiert. Er sollte standardmässig auf dem Bildschirm erscheinen, wenn du Tasker startest.

1557de2784161fa9d4c0a249d095eb08359deda32b0e9515da2439c2a4235deb

Dem folgen dann zwei Tasks:

  • Task #1: … starte Poweramp
  • Task #2: … starte Spotify
  • Exit Task: Kill App

Du findest ihn in einem Tab rechts des Profile Screens

1557de2784161fa9d4c0a249d095eb08359deda32b0e9515da2439c2a4235deb

Doch mit den sogenannten Entry Tasks ist es nicht getan. Dazu dient der Exit Task. Dieser stellt sicher, dass die Musik nach dem Abstellen des Autos auf das Smart Device mit Akku wechselt und weiterspielt.

Sowohl Profiles wie auch Tasks können abgewandelt werden und dienen nicht nur der Nutzung im Auto. Profile #2 funktioniert zum Beispiel mit jedem Bluetooth-Lautsprecher.

Rein vom Arbeitsfluss her lohnt es sich, zuerst die Tasks zu definieren und dann die Profiles. Das ist zwar kein Gesetz, aber im Laufe der Jahre der Arbeit mit Spotify hat sich das so eingebürgert.

Poweramp: Das Setup

Im späteren Verlauf dieses Artikels wird Poweramp und dessen Einstellungen wichtig. In diesem Artikel habe ich das recht simpel gemacht. Ich habe knapp 60 MP3-Dateien von meiner Festplatte in den Ordner «Music» des Android-Systems kopiert.

1557de2784161fa9d4c0a249d095eb08359deda32b0e9515da2439c2a4235deb

Danach habe ich alle Lieder in eine Playlist gepackt und diese «001» getauft. Dies, da es im späteren Verlauf der Bauarbeiten unseres Automatismus einfacher wird, wenn da keine Leerzeichen sind. Also «Gute Lieder für Regenwetter» ist weniger gut geeignet. Dies, da nicht nur Abstände im Namen sind, sondern auch Sonderzeichen. Wenn du die Playlist irgendwas von wegen Regen und Musik nennen willst, dann empfehle ich dir «GuteLiederFuerRegenwetter» oder «RegenLieder».

Profile #1: Wenn die Stromversorgung steht...

In einem alten Auto mit einem Audiosystem, das die Verbindung mit dem Smartphone oder Tablet per USB zulässt, können wir das Profil so setzen: Musik wird abgespielt, sobald das Smart Device erkennt, dass eine Stromversorgung da ist.

  1. Öffne Tasker
  2. Geh auf den Bildschirm «Profiles»
  3. Drück das Plus-Symbol
  4. Drück auf «State»
  5. Drück auf «Power»
  6. Drück nochmal auf «Power»
  7. Wähle als Option «Any»
  8. Drück oben links auf den Pfeil zurück

Das ist die mit Abstand einfachste Version des «If» in dieser Anleitung. Denn ab jetzt werden wir nach und nach mehr Variablen und programmatisches Wissen einbauen.

Tasker-Profile und -Tasks können exportiert werden. Diese Syntax kannst du in deine Tasker-App importieren. In Tasker sieht das oben so aus:

   Profile: Poweramp_on (5)
        Restore: no
        State: Power [ Source:Any ]

Profile #2: Wenn Bluetooth verbunden...

In einem halb-smarten Fahrzeug kannst du dein Smart Device mit dem Audiosystem via Bluetooth verbinden. Eine vollständige Integration in die Fahrzeug-Software fehlt aber. Bei der Verbindung übermittelt das Fahrzeug eine eindeutige Kennung, der Name der Bluetooth-Verbindung mit einer Bluetooth-Adresse im Format 00:11:22:33:FF:EE. Der Dodge Charger identifiziert sich mir gegenüber mit dem Identifier «UConnect».

Es ist möglich, das Profil auf jede Bluetooth-Verbindung auszuweiten, aber das ist angesichts der Unzahl Bluetooth Devices unpraktisch. Du willst nicht, dass die Musik losgeht, wenn du deine Smartwatch mit dem Phone verbindest.

  1. Verbinde das Smartphone manuell mit dem Auto. Tasker kann die Bluetooth-Adresse alleine auslesen. Das macht es uns etwas einfacher.
  2. Öffne Tasker
  3. Geh auf den Bildschirm «Profiles»
  4. Drück auf «Net»
  5. Drück auf «BT Connection»
  6. Drück neben dem Feld «Name» auf die Lupe
  7. Wähl die Verbindung deines Autos, in meinem Falle «UConnect», gefolgt von einer Adresse
  8. Drück oben links auf den Pfeil zurück

Damit wird die Musik nur dann abgespielt, wenn du dein Smartphone mit dem einen Auto verbindest. Dieser Auslöser funktioniert nur auf diesem einen Dodge, nicht seinem Kollegen aus der gleichen Baureihe. Denn die Adresse ist einzigartig. Wenn du also dieselbe Funktion für ein anderes Auto willst, dann musst du das Profil duplizieren und den Namen der Verbindung anpassen.

   Profile: Poweramp_bt_direct (18)
        Restore: no
        State: BT Connected [ Name:SRS-XB31 Address:00:11:22:33:FF:EE ]

Profile #3: Wenn Android Auto aktiv…

In einem smarten Auto aktiviert sich Android Auto erst dann, wenn du entweder dem Smart Device oder dem Auto sagst, dass es sich aktivieren soll. Im Ford F-150 ist das ein Icon auf dem Bildschirm. In anderen Autos kann das Kommando vom Handy aus kommen.

Android Auto lässt sich auf dem Smartphone oder dem Tablet nicht so leicht identifizieren. Denn die App ist technologisch gesehen eigentlich keine eigene App. Im Wesentlichen stellt es bloss die Ansicht auf dem Bildschirm um, damit sie optimiert ist für die Nutzung im Auto. Sobald sich aber an einem Android-System etwas verändert, wird im Hintergrund irgendetwas angepasst. Im Falle von Android Auto ist das eine Variable.

%UIMODE

Diese Variable wird auf den Wert «car» gesetzt, wenn Android Auto aktiv ist. Und genau das können wir im Tasker Profiles Screen abfangen.

  1. Plus-Symbol
  2. «Event»
  3. «Variables»
  4. «Variable Set»
  5. Im oberen Feld, das mit dem %-Zeichen beginnt «UIMODE» ohne Anführungszeichen eingeben
  6. Im Feld «Value» tippst du «car»
  7. Pfeil zurück

Tasker wirft dir folgendes aus:

   Profile: Poweramp_androidAuto (24)
        Restore: no
        State: Variable Value  [ %UIMODE ~ car ]

Profile #4: Wenn FCC Launcher aktiv ist

FCC Launcher und Android Auto sind zwei Apps. Die Icons gleichen sich zwar stark, aber FCC kann ohne Android Auto und andersrum. Daher, wenn ein Setup auf FCC Launcher läuft – Hallo, Kurt! –, dann muss die App separat abgefangen werden. Das geht noch ein Stückchen einfacher als die Variable Android Autos zu überwachen: FCC Launcher ist nicht so tief in Android integriert, sondern sitzt obendrauf. Wieder im Profiles Screen:

  1. Plus-Symbol
  2. «Application»
  3. «FCC Launcher», da sind zwei Icons. Macht keinen Unterschied, welches du wählst. Und wenn doch, dann einfach das Profil korrigieren und das andere nehmen.
  4. Pfeil zurück
   Profile: Poweramp_fcc (25)
        Restore: no
        Application: FCC Launcher

Damit haben wir jetzt die wohl meistgebrauchten Varianten des Aufstarten eines Autos abgehandelt. Und wenn du sonst eine App oder eine Variable hast, auf die Tasker achten soll, dann weisst du, wie das geht. Ist gar nicht so schwierig.

Task #1: Starte Poweramp

Poweramp hat eine offene Programmschnittstelle, API genannt. Diese API können wir direkt ansprechen und der App so Kommandos übergeben, ohne, dass wir das graphische User Interface aufrufen müssen. In FCC Launcher siehst du dann zwar das Album im grossen Kreis, aber direkt interagieren musst du mit der Software nicht mehr.

Wir bauen aber noch einen Modifikator ein: Eine Wartezeit. Sie ist notwendig, da eine Bluetooth-Verbindung etwas Zeit braucht, um über die Einstellungen des Audio-Outputs zu verhandeln. Auch bei einer Kabelverbindung ist die Wartezeit nützlich, da du so den Fehlstart des Audiosystems im ACC-Modus beim normalen Anlassen des Motors überspringst und die Musik erst dann anfängt zu spielen, wenn der Motor läuft.

Für diesen Task wechseln wir in Tasker in den Task Screen. Und hier wird es so richtig cool:

  1. Plus-Symbol
  2. Nenne den Task «Poweramp_play»
  3. Plus-Symbol
  4. Am unteren Rand hast du einen Filter, diesen werden wir für alle Task-Elemente verwenden, sonst klickst du dich närrisch
  5. Filter: Wait
  6. Schieb den Regler auf 5 Sekunden
  7. Pfeil zurück
  8. Plus-Symbol
  9. Filter: Send Intent

Hier muss ich ausholen. Ein Intent ist ein Befehl, den wir direkt an die API Poweramps schicken. Das ist recht komplex zu beschreiben. Daher eine kleine Interlude.

Poweramp und Tasker: Intents

Poweramp erlaubt es dir, von Tasker aus Befehle an die App zu senden. Dafür müssen wir im Tasker Task Screen «Send Intent» drei Zeilen ausfüllen. Der Rest der Zeilen auf dem überwältigend wirkenden Screen kannst du ignorieren. Zumindest für das vorliegende Projekt.

1557de2784161fa9d4c0a249d095eb08359deda32b0e9515da2439c2a4235deb

In der Zeile «Action», die oberste Zeile, teilen wir Tasker mit, wo die API liegt und dass sie damit sprechen soll. Daher tragen wir dort folgendes ein:

com.maxmpz.audioplayer.API_COMMAND

Mit «com.maxmpz.audioplayer» sprechen wir die Poweramp-App an. Denn das ist der systeminterne Name Poweramps. «API_COMMAND» ist der Part, der Poweramp sagt: «Jetzt kommt ein Befehl, den du ausführen kannst».

In der Zeile «Data» müssen wir Poweramp sagen, dass die App mit der Playlist arbeiten soll. Diese haben wir «001» genannt. Darum schreiben wir:

content://com.maxmpz.audioplayer.data/playlists/001/files

Wenn die Playlist jetzt «HalloKurt» heissen würde, dann stünde da

content://com.maxmpz.audioplayer.data/playlists/HalloKurt/files

Damit sagen wir Poweramp, dass wir mit einer Playlist und deren Dateien in Poweramp reden wollen. Tasker weiss jetzt also, dass wir mit Poweramp reden wollen und Poweramp weiss, dass wir mit der Playlist «001» und deren Dateien reden wollen.

Ab hier können wir der Playlist direkt Kommandos übergeben. Maxim Petrov, der alleinige Entwickler Poweramps, hat die Kommandos öffentlich gemacht.

1 Play/Pause
2 Pause
3 Resume
4 Next
5 Previous
6 Next Category
7 Previous Category
8 Repeat
9 Shuffle
10 Start Fast Forward
11 End Fast Forward
12 Begin Rewind
13 End Rewind
14 Stop
15 Seek
16 Request Current Track Position
17 Sleep Timer
20 Open and Play
50 Set Equalizer Preset
51 Set Equalizer nach String
52 Set Equalizer Band
53 Set Equalizer Enabled
100 Stop Service
200 Minimum Time in between Seeks

Da nicht jedes Mal dasselbe Lied laufen soll, wenn die Musik angeht, aktivieren wir den Shuffle. In der ersten Zeile mit der Beschreibung «Extra» tragen wir folgendes ein:

cmd:9

Damit mischt Poweramp die 60 Lieder durch, spielt sie aber noch nicht ab. Dazu geben wir im zweiten Feld «Extra» ein:

cmd:20

Tasker braucht noch eine weitere Information. Nämlich, dass der Intent an den Service geschickt werden muss. Im Feld «Target», weiter unten auf dem Screen, musst du die Option «Service» wählen.

Fertig. Pfeil zurück, bis du wieder auf dem Tasks Screen bist.

In Poweramp Syntax sieht das so aus:

   Poweramp_play (4)
        A1: Wait [ MS:0 Seconds:5 Minutes:0 Hours:0 Days:0 ] 
        A2: Send Intent [ Action:com.maxmpz.audioplayer.API_COMMAND Cat:None Mime Type: Data:content://com.maxmpz.audioplayer.data/playlists/001/files Extra:cmd:9 Extra:cmd:20 Extra: Package: Class: Target:Service ]

Mit diesem Intent spielt das Smart Device einen zufälligen Track der Playlist ab. In Kombination mit dem Wait-Kommando oben beginnt die Musik nach fünf Sekunden.

Task #2: Starte Spotify

Anders als Poweramp können wir wesentlich einfacher mit Spotify reden.

1557de2784161fa9d4c0a249d095eb08359deda32b0e9515da2439c2a4235deb
  1. Plus-Symbol
  2. Nenne den Task «Spotify_play»
  3. Plus-Symbol
  4. Am unteren Rand hast du einen Filter, diesen werden wir für alle Task-Elemente verwenden, sonst klickst du dich närrisch
  5. Filter: Wait
  6. Schieb den Regler auf 5 Sekunden
  7. Pfeil zurück
  8. Plus-Symbol
  9. «Media»
  10. «Media Control»
  11. «Play (simulated only)»
  12. App/Package Name: Spotify
  13. Pfeil zurück bis du auf dem Tasks Screen bist

In Tasker sieht das dann so aus:

   Spotify_play (22)
        A1: Wait [ MS:0 Seconds:5 Minutes:0 Hours:0 Days:0 ] 
        A2: Media Control [ Cmd:Play [Simulated Only] Simulate Media Button:On Package/App Name:Spotify Use Notification If Available:Off ]

Life Hack: Bluetooth und Fahrsicherheit

Wenn du oft mit Bluetooth Audio arbeitest, dann kennst du das Problem mit der Lautstärke. Bluetooth-Geräte haben eine eigene Lautstärkeregelung. Bluetooth-Kopfhörer haben eine eigene Lautstärkeregelung, die im schlimmsten Falle unabhängig von der Lautstärkeregelung des Smartphones ist. Das kann dazu führen, dass das Smartphone Audiolautstärke 5 ausgibt, das Autoradio dann aber voll aufgedreht werden muss. Sonst hörst du schlicht nichts. Zudem haben manche Autoradios den blöden Effekt, dass sich bei ganz hohen Lautstärken ein Rauschen unter die Musik legt.

Das ist im Verkehr bestenfalls nervig und schlimmstenfalls gefährlich. Und es ist illegal, während der Fahrt am Handy rumzuspielen. Daher habe ich einen Task gebastelt, der das Media Volume des Phones nach einem Trigger auf die Maximallautstärke dreht. Damit können wir die Lautstärke der Musik am Regler im Auto regeln.

Im Tasks Screen:

  1. Plus-Symbol
  2. Plus-Symbol
  3. Filter: Media Volume
  4. Level: 15
  5. Pfeil zurück bis du wieder im Tasks Screen bist

Im Exit Task würde ich, wenn du die Bluetooth-Version dieser ganzen Veranstaltung wählst, einen Media Volume Subtask erstellen, der die Lautstärke wieder auf 5 oder so setzt.

    Poweramp_play_bt (16)
        A1: If [ %BtConnected ~ 1 ]
        A2: Wait [ MS:0 Seconds:5 Minutes:0 Hours:0 Days:0 ] 
        A3: Media Volume [ Level:15 Display:Off Sound:Off ] 
        A4: Send Intent [ Action:com.maxmpz.audioplayer.API_COMMAND Cat:None Mime Type: Data:content://com.maxmpz.audioplayer.data/playlists/001/files Extra:cmd:9 Extra:cmd:20 Extra: Package: Class: Target:Service ]

Exit Task: Kill App

Damit haben wir den Part des Abspielens fertig. Was jetzt noch fehlt ist der Exit Task. Dieser ist wichtig, dass die Musik wieder aufhört zu spielen, wenn die Stromversorgung abreisst, Android Auto deaktiviert wird oder die Bluetooth-Verbindung beendet wird. Es kann nämlich sein, dass Poweramp oder Spotify oder irgendeine andere App beschliesst, einfach weiter Musik vom Phone oder dem Tablet aus zu spielen. Dem können wir vorbeugen mit einem Exit Task.

Poweramp Exit Task: App via Intent beenden

Im Tasks Screen erstellen wir einen neuen Task mit dem Namen «poweramp_kill».

  1. Plus Symbol
  2. Filter: Send intent
  3. Action: com.maxmpz.audioplayer.API_COMMAND
  4. Extra: cmd:2
  5. Pfeil zurück bis auf den Tasks Screen
    Poweramp_kill (8)
        A1: Send Intent [ Action:com.maxmpz.audioplayer.API_COMMAND Cat:None Mime Type: Data: Extra:cmd:2 Extra: Extra: Package: Class: Target:Service ]

Spotify Exit Task: Media Controls

Spotify kann so unterbrochen werden, wie die App aufgerufen wird. Mit einem simulierten Knopfdruck. Das machen wir im Task «spotify_kill»

  1. Plus-Symbol
  2. «Media»
  3. «Media Control»
  4. Cmd: Toggle Pause
  5. Package/App Name: Spotify
  6. Zurück, bis du auf dem Tasks Screen bist
    Spotify_kill (28)
        A1: Media Control [ Cmd:Stop Simulate Media Button:On Package/App Name:Spotify Use Notification If Available:Off ]

Der Abschluss ist kurz

Nach der Definition der Tasks können wir diese beliebig kombinieren. Das geht ganz fix. Im Profiles Screen definierst du dein «if» Statement. Also «Wenn Bluetooth verbunden» oder «Wenn Android Auto aktiv» und fügst dann einen Task hinzu.

  1. Profil definieren
  2. Musik-Mach-Task hinzufügen
  3. Lange auf den Musik-Task im Profile Screen klicken
  4. «Add Exit Task»
  5. Deinen Exit Task definieren

Voilà. Stell sicher, dass der Regler des Profils auf «an» ist und du kannst in ein Auto einsteigen und das funktioniert wunderbar. Achtung, wenn du mit Spotify arbeitest, dann muss das Tablet oder das Phone online sein. Sonst bringt das wenig.

Fazit: Komplex im Ansatz

Die Komplexität dieses Projektes ist nicht zwingend der Part mit dem Abspielen der Musik, sondern der richtigen Erkennung der Umweltfaktoren, die wir beachten können und müssen. Das ist es, was ich an der Arbeit mit Tasker so mag. Nach Kurts Mail dachte ich mir «Hab ich in zehn Minuten», bin dann aber am Ende doch einige Stunden drangesessen. Ein Grossteil der Zeit habe ich damit verbracht, die mechanischen Vorgänge in einem Auto zu analysieren und zu hinterfragen. So wurde aus dem simplen Losfahren ein technologisch komplexer Vorgang. Obwohl das Wissen darum in den meisten Fällen komplett unnütz ist, so verstehe ich doch mehr vom Alltag.

Auch wenn das Projekt zu Beginn überwältigend und unendlich komplex wirkt, solide Recherche im Vorfeld macht die Sache endlich einfach. Dank der Vielfalt der Funktionen Taskers können wir so ziemlich alles abfangen oder manipulieren. Das macht Spass. Und vereinfacht unser Leben am Ende stark.

Dann ist da die Wichtigkeit von APIs und sauberer Dokumentation derer. Es ist viel einfacher, mit Poweramp zu interagieren als mit Spotify. Komplexe Kommandos wie Shuffle und dann Play können easy gehandhabt werden, wo die Interaktion mit Spotify nur Play/Pause zulässt.

Am Ende hoffe ich, dass ich praktikable Lösungen für deinen Use Case geschaffen habe. Kurts Problem ist sicher gelöst. Und auch wenn dein Use Case nicht abgedeckt ist: Ich hoffe, ich habe dir sicher den Weg in die richtige Richtung geleitet.

Zum Schluss: Downloads

Tasker hat das coole Feature, dass Profile im XML-Format exportiert werden können. Diese habe ich mal auf meinen GitHub Account geladen. Sie sind also für dich frei verfügbar. Viel Spass damit.

Du darfst die Daten in den Repositories gerne für dich verwenden und verändern. Wenn du was Cooles damit machst, dann lass mich wissen.

Du hast ein anderes Projekt, das du nicht hinkriegst? Lass es mich wissen. Ich setz mich da gerne dran.

So. Fertig. Viel Spass und keep on hacking.

49 Personen gefällt dieser Artikel


Dominik Bärlocher
Dominik Bärlocher

Senior Editor, Zürich

Journalist. Autor. Hacker. Ich bin Geschichtenerzähler und suche Grenzen, Geheimnisse und Tabus. Ich dokumentiere die Welt, schwarz auf weiss. Nicht, weil ich kann, sondern weil ich nicht anders kann.

Diese Beiträge könnten dich auch interessieren