定期的に警告/ダイアログボックスを表示したい前景に私のMacで。
私はAppleScriptとスクリプト(実際にはアプリに変換)を組み合わせて試し、launchd
launchd経由で定期的に起動することができました。しかし、警告ボックスは他のすべてのウィンドウの前に表示されません(タブで移動するまで完全に隠れています。するから始めてくださいlaunchd
。どうすれば前面に出せますか?
私のスクリプトは次のとおりです。
on run
activate me --> tried to get alert in foreground
--> didn't help, though
display alert "Should show up in foreground..."
end run
私の launch.plist は ( ) です/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>
答え1
回答を得た違う質問をする:
解決策はopen
アプリは、アプリアイコンをダブルクリックするようなものです。つまり、呼び出されるプログラムを置き換え/usr/bin/open
、launchd.plist 内で次のようにアプリを引数として渡す必要があります。
<key>Program</key>
<string>/usr/bin/open</string>
<key>ProgramArguments</key>
<array>
<string>open</string>
<string>/Users/bernhard/programming/periodic.app</string>
</array>
最初の引数 (この場合はopen
) は実際には として渡されるためargv[0]
、ここでは関係ありません。実際の最初の引数は、/Users/[...]/periodic.app
実際のバイナリではなく、 – アプリ ディレクトリです。