我需要在给定的时间内自动打开我的应用程序并从该应用程序运行特定任务。所以我在谷歌搜索并想出了launchd
. 第一个问题,这是正确的选择吗?
我创建了一个 plist 并将其保存在该位置~/Library/LaunchAgents/fileName.plist
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>com.companyname.example</string>
<false/>
<key>RunAtLoad</key>
<true/>
<key>UserName</key>
<string>mac_1</string>
<key>Program</key>
<string>open</string>
<key>ProgramArguments</key>
<array>
<string>Argument_1</string>
<string>Argument_2</string>
</array>
<key>StartCalendarInterval</key>
<dict>
<key>Day</key>
<integer>1</integer>
<key>Hour</key>
<integer>10</integer>
<key>Minute</key>
<integer>41</integer>
<key>Month</key>
<integer>8</integer>
<key>Weekday</key>
<integer>3</integer>
</dict>
<key>KeepAlive</key>
<true/>
</dict>
</plist>
这样做的问题是,它只有在计算机重新启动时才起作用,否则将不会被调用。那么,我的第二个问题是 launchd 何时注册活动?