Я читал документацию и пример SMJobBless и различные обсуждения в Интернете. Мое приложение теперь устанавливает привилегированный помощник, используя SMJobBless()
, но помощник вообще не запускается.
Вся цель помощника состоит в том, чтобы загружать kext, важный компонент моего приложения, всякий раз, когда приложение запускается. Я видел примеры, показывающие, что попытка подключения к хелперу через XPC запустит хелпер, но я хотел бы, чтобы мой хелпер был простым и тупым.
Документ API показывает, что есть функция SMJobSubmit()
. Что именно он делает? Могу ли я использовать его для запуска привилегированного помощника, установленного ранее с помощью SMJobBless()
?
Меня смущают все термины вокруг launchd
иService Management Framework
-например, параметр plist «RunAtLoad» определяет, «запускается ли ваше задание один раз во время загрузки задания». Что такое «загрузить» и «запустить» и как они связаны с «благословить/установить» и «отправить»?