Я создаю проект для приложения os x с xpcservices, который запускается loginItems. это означает, что услуга основана в приложении в пути: {APP_NAME}.app/Contents/Library/LoginItems
и кто несет ответственность за запуск службы является основным приложением:XPCServices, не обновляющий код
NSXPCConnection *connection = [[NSXPCConnection alloc] initWithLoginItemName:@"{SERVICE_NAME}.app" error:&error];
Я использовал класс: NSXPCConnection + LoginItem.h из примера DOCS яблока : https://developer.apple.com/library/mac/samplecode/AppSandboxLoginItemXPCDemo/Listings/iDecide_NSXPCConnection_LoginItem_h.html
Q: Почему при обновлении кода службы (даже просто журналы) это не изменилось?
вы должны знать:
Я удалил все файлы, связанные с этим проекты и службы (я не использовал LaunchAgents или LaunchDaemons папки)
Я удалить службу по: launchctl remove {SERVICE_LABLE}
Я использовал консоль приложение для просмотра разницы между той версией, что я бегом
Я даже купил «cleanM yMac3.app "и перезагрузился, и все же я запускаю приложение Xcode и все еще показываю журналы из предыдущей версии.
Я искал файл в системе, связанной с именем службы, и я нахожу несколько папок, созданных и я удалил их:
- ~/Library/Group Контейнеры/{SERVICE_NAME}
- ~/Библиотека/Контейнеры/{SERVICE_NAME}
- ~/Library/кэши/{SERVICE_NAME}
- ~/Library/Application State Сохраненный/{SERVICE_NAME}
Я не работаю песочница
Я не работаю с песочницей, и это работает, когда я изменил идентификатор, как и сказал, но через некоторое время он все еще не работает. –
Тогда только другие способы связаны с API xpc_main api (API на основе Cxx), а другой - документально описанным в руководстве по программированию Daemons ... NSHipster (просто быстро просмотрел быстрые ответы) как довольно полное объяснение Api's и их uses.http: //nshipster.com/inter-process-communication/ <- это ссылка на примеры mach_port, которые у них есть. Помимо этого, код Apple должен быть достаточным. И с 2.1 я писал XPC-сервисы (и службы XPCConnection) в swift (с некоторой помощью заголовка). Работает отлично :) –