Sto cercando di installare uno strumento di supporto privilegiato usando SMJobBless . < br>
Il mio plist contiene solo la chiave MachServices
e la chiave RunAtLoad
. RunAtLoad
è impostato su true perché voglio essere avviato automaticamente dopo l'installazione.
Ora, il problema è che una volta installato e avviato lo strumento di supporto che completa con successo il suo lavoro, viene riavviato e continua a ripetersi.
Biglietto di lavoro launchd originale
<?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">
<key>Label</key>
<string>com.ak.SMJobBlessHelper</string>
<key>MachServices</key>
<dict>
<key>com.ak.SMJobBlessHelper.mach</key>
<true/>
</dict>
<key>ProgramArguments</key>
<array>
<string>/Library/PrivilegedHelperTools/com.ak.SMJobBlessHelper</string>
</array>
<key>RunAtLoad</key>
<true/>
</plist>
Ho provato varie cose per impedirgli di lanciare di nuovo, ma invano:
- Si è tentato di aggiungere
KeepAlive
afalse
nel plist. - Si è tentato di aggiungere
KeepAlive
come dizionario con la chiaveSuccessfulExit
su false. - Ho provato a far dormire la mia app per ore occulte prima di smettere di dormire per 5 minuti, 10 minuti ecc., ma viene comunque riavviata.
Ho praticamente esaurito le idee, voglio che venga lanciato solo quando chiedo e non automaticamente e anche più e ancora.
Per favore aiuto. Grazie mille.
SO: Mac OS X 10.8.4 12E55
Xcode: 4.6.2 (4H1003)