如何使用 XPC 将 Catalyst 应用程序连接到 macOS 应用程序?

问题描述

我有一个现有的(Catalyst)应用“A”。我希望它提供一个 xpc 服务,该服务可以由另一个 (macOS) 应用程序“B”连接。

我已使用 Xcode 将 xpc 目标添加到应用程序“A”并根据 https://matthewminer.com/2018/08/25/creating-an-xpc-service-in-swift.html 进行设置。 xpc 目标编译,我已将生成的 .xpc 文件添加到应用程序“A”的“框架、库等”中。在 Xcode 中。

当我执行应用程序“A”时,没有执行 xpc 目标的代码。我希望在启动应用程序“A”时执行 xpc 目标的 main.swift 以启动侦听器。但是既没有断点,也没有在控制台上显示日志消息。

main.swift:

import Foundation

NSLog("Service has started")

let delegate = MyServiceDelegate()
let listener = NSxpcListener.service()
listener.delegate = delegate
listener.resume()

当我将 main.swift 中的代码直接放入应用程序“A”的 init() 时,我在 listener.resume() 处崩溃了。

谁能解释一下 xpc 的东西是如何启动的?我不想要使用 launchd解决方案,只要应用程序“A”运行,xpc 侦听器就应该运行。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...