Skip to main content
2 of 3
edited body
MacDeveloper
  • 526
  • 1
  • 7
  • 18

My launchAgent service is launching my application multiple times even if configuration has RunAtLoad true and OnDemand true(default)

My purpose is to launch my application during every login but is being launched multiple times.

I copied my below plist file in to /Library/LaunchAgents and gave root ownership and chmod 600

<?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>en com.test.UserAgent</string>
        <key>ProgramArguments</key>
        <array>
                <string>/Applications/Test/Test Agent.app/Contents/MacOS/Test Agent</string>
        </array>
        <key>RunAtLoad</key>
        <true/>

</dict>
</plist>

When I login it loads and I can see it in launchctl list as

825 0   com.test.UserAgent

825 ==> Pid of my running application

When I quit my agent manually I see

_   0   com.test.UserAgent

- ==> Which means application is currently not running 

Then I relaunched my application manually

I see this in launchctl list

7075    0   com.test.workagent.30264

7075 ==> Pid of my application running 

After some time my launchd is also trying to load launch agent service I see another instance of my application is being run.

8124    0   com.test.UserAgent ==> LaunchAgent Service

7075    0   com.test.workagent.30264. ==> Manually launched from applications 

Expected behaviour is launch agent service should not launch my application again other than during login time

MacDeveloper
  • 526
  • 1
  • 7
  • 18