+ Antworten
Ergebnis 1 bis 5 von 5
  1. #1
    Wohlschmecker aus Vierlanden
    Themenstarter

    Registriert
    11.2009
    Beiträge
    235

    Frage Applet zusammen mit iTunes starten bzw. beenden

    Gibt es eine technische Möglichkeit ein Applet zusammen mit iTunes zu starten und zu beenden?

    Hintergrund der Frage:
    - Ich habe einen last.fm-Scrobbler für iTunes Radio geschrieben.
    - Es handelt sich um eine Hintergrundanwendung ohne Benutzerinterface.
    - Das Applet ruft alle 11 Sekunden die iTunes-Schnittstelle auf, und ermittelt ob ein neuer Titel angefangen hat.

    Ich möchte nun das Applet automatisch zusammen mit iTunes starten. Genauso sollte sich das Programm zusammen mit iTunes beenden; andernfalls startet sich iTunes durch die Applet-Abfrage ja wieder.
    Kommunikation -> Kooperation -> Innovation

  2. #2
    Adams Parmäne Avatar von fyysh
    Registriert
    01.2010
    Ort
    Rheinknie
    Alter
    33
    Beiträge
    1.304
    Es gibt ein App, dass das macht. Es heißt GimmeSomeTune. Also gibt es das.
    Wie die das gelöst haben, kann ich dir aber nicht sagen. launchd scheint es nicht zu sein.
    The cause of the problem is:
    Don't worry; it's been deprecated.
    The new one is worse.

  3. #3
    Zabergäurenette Avatar von LittlePixel
    Registriert
    07.2008
    Beiträge
    612
    Hallo,

    andernfalls startet sich iTunes durch die Applet-Abfrage ja wieder.
    Du mußt vorab fragen, ob iTunes überhaupt gestartet ist:
    Code:
    tell application "System Events"
    	if ((bundle identifier of processes) contains "com.apple.iTunes") then
    		return true
    	else
    		return false
    	end if
    end tell
    ... erst dann richtest Du Deine Anfrage an iTunes.

    Möglicherweise solltest Du Dir überlegen, ob Du weiter Deine Zeit mit AS verbringen möchtest.
    Für Dein Vorhaben ist Cocoa/Objective-C viel besser geeignet.
    iTunes sendet bei jedem Titelwechsel usw. Nachrichten ins System, die Du belauschen kannst, u.a. wenn es geöffnet bzw. geschlossen wird.

    http://developer.apple.com/mac/libra...roduction.html

    Das würdest Du benötigen und funktioniert super.

    Viele Grüße

  4. #4
    Wohlschmecker aus Vierlanden
    Themenstarter

    Registriert
    11.2009
    Beiträge
    235
    AppleScript ist m.E. das Mittel der Wahl wenn des darum geht, Arbeitsabläufe in skriptfähigen Anwendungen zu automatisieren, diese untereinander zu verknüpfen oder um Funktionalität zu erweitern. Ich sehe es aber ähnlich wie LittlePixel: Für deutlich darüber hinaus gehende Aufgabenstellungen sollte man Alternativen betrachten.

    Hintergrund - ich sehe für meinen Anwendungsfall folgendes Problem: Es kann passieren, daß während der Shutdownphase von iTunes, aus meiner Anwendung ein Event gegen iTunes ausgelöst wird. Dies hat zur Folge, daß iTunes nach dem Shutdown sofort wieder startet.

    Bevor ein Event ausgelöst wird, wird zwar abgefragt ob iTunes überhaupt läuft (z.B. via "if iTunes is running"), das prinzipielle Problem besteht aber darin, daß auch während der Shutdownphase "is running" den Status "true" zurück liefert.

    D.h. ich suche nach einer systemseitigen Möglichkeit, Anwendungen miteinander zu verknüpfen. Konkret: Nach erfolgtem Start der Masteranwendung iTunes soll die verknüpfte Anwendung iTunesRadioScrobbler gestartet werden. Und umgekehrt soll vor dem Beenden der Masteranwendung zunächst die verknüpfte Anwendung gestoppt werden.

    Alternativer Lösungsansatz: Shutdownerkennung für iTunes (z.B. via ps).
    Geändert von toc-rox (08.09.2010 um 14:38 Uhr)
    Kommunikation -> Kooperation -> Innovation

  5. #5
    Adams Parmäne Avatar von fyysh
    Registriert
    01.2010
    Ort
    Rheinknie
    Alter
    33
    Beiträge
    1.304
    D.h. ich suche nach einer systemseitigen Möglichkeit, Anwendungen miteinander zu verknüpfen. Konkret: Nach erfolgtem Start der Masteranwendung iTunes soll die verknüpfte Anwendung iTunesRadioScrobbler gestartet werden. Und umgekehrt soll vor dem Beenden der Masteranwendung zunächst die verknüpfte Anwendung gestoppt werden.
    Leider habe ich mich mit dieser Thematik noch nicht auseinandergesetzt, kann dir aber mit 100%iger Sicherheit sagen, dass es genau so funktioniert, wie du es vorhast.

    Tools wie Keyboard Maestro oder QuicKeys bieten solche Features an. Ich gehe davon aus, dass es irgendwo (nur wo?) dokumentiert sein müsste. Meine Schnellsuche hat leider nichts brauchbares ausgespuckt.

    Wenn du was findest, wäre es super, wenn du es hier reinposten könntest. Würde mich ebenfalls sehr interessieren.

    Einfach nur die Scripting Bridge von iTunes zu verwenden ist übrigens, wie ich gestern feststellen musste, irgendwie suboptimal, da iTunes neu startet, wenn man diese "anspricht" während iTunes heruntergefahren wird. Bei den schnelleren Möglichkeiten im Scripting-Bereich, um die Scripting Bridge zu nutzen (Ruby/Perl), ist die Wahrscheinlichkeit zwar geringer, dass man iTunes genau im falschen Augenblick erwischt, aber nicht unmöglich, wie ich feststellen musste.

    Sollten GimmeSomeTune und I Love Stars ObjC für die Nutzung der Scripting Bridge nutzen, so kann das "Wiederhochkommen" auch mit ObjC verursacht werden. Irgendwie sehr halbgeil. Man müsste also den Quit Event von iTunes abfangen können und in diesem Fall sofort aufhören, die Scripting Bridge anzusteuern. Dann sollte es klappen.
    The cause of the problem is:
    Don't worry; it's been deprecated.
    The new one is worse.

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein