Я адаптирую приложение MacOS для использования песочницы. Он использует вспомогательное приложение (exe-файл в том же пакете), которое завершается неудачно, когда я пытаюсь вызвать CFMessagePortCreateRemote с сообщением «deny mach-lookup» в консоли.
Я вижу, что ключ разрешения com.apple.security.temporary-exception.mach-lookup.global-name
может решить эту проблему, но это только временно.
Есть ли способ установить связь между двумя приложениями с помощью порта Mach в изолированном приложении?
Ошибки:
let port = CFMessagePortCreateLocal(nil, "XXXYYYZZZZ.MyAppGroupName" as CFString, Callback, nil, nil)
let runLoopSource = CFMessagePortCreateRunLoopSource(kCFAllocatorDefault, port, 0)
CFRunLoopAddSource(CFRunLoopGetCurrent(), runLoopSource, .commonModes)
*** CFMessagePort: bootstrap_register (): ошибка 1100 (0x44c) «Отказано в доступе», порт = 0x14807, имя = «XXXYYYZZZZ.MyAppGroupName»