
Ich möchte, dass regelmäßig ein Warn-/Dialogfeld angezeigt wirdim Vordergrundauf meinem Mac.
Ich habe eine Kombination aus AppleScript ausprobiert und launchd
es geschafft, das Skript (das eigentlich in eine App umgewandelt wurde) regelmäßig über launchd zu starten. Allerdings wird das Warnfeld nicht vor allen anderen Fenstern angezeigt (es ist vielmehr völlig ausgeblendet, bis ich mit der Tabulatortaste darauf zugreife – obwohl estutloslegen über launchd
). Wie kann ich es nach vorne bringen?
Mein Skript sieht wie folgt aus:
on run
activate me --> tried to get alert in foreground
--> didn't help, though
display alert "Should show up in foreground..."
end run
Meine launch.plist ist (in /Users/bernhard/Library/LaunchAgents/
):
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>bernhard.sitstraight.plist</string>
<key>Program</key>
<string>/Users/bernhard/programming/periodic.app/Contents/MacOS/applet</string>
<key>RunAtLoad</key>
<true/>
<key>StartInterval</key>
<integer>1200</integer>
</dict>
</plist>
Antwort1
Habe eine Antwort bekommen aufFragen Sie anders:
Die Lösung besteht darin,open
der App, was eher einem Doppelklick auf das App-Icon gleichkommt. D.h. man muss das aufzurufende Programm ersetzen /usr/bin/open
und die App als Argument wie folgt innerhalb der launchd.plist übergeben:
<key>Program</key>
<string>/usr/bin/open</string>
<key>ProgramArguments</key>
<array>
<string>open</string>
<string>/Users/bernhard/programming/periodic.app</string>
</array>
Das erste Argument (in diesem Fall open
) wird tatsächlich als übergeben argv[0]
und ist daher hier nicht relevant. Das tatsächliche erste Argument ist dann /Users/[...]/periodic.app
– das App-Verzeichnis und nicht die eigentliche Binärdatei.