【问题标题】:XPC Service NSCocoaError domainXPC Service NSCocoaError 域
【发布时间】:2016-02-24 23:40:29
【问题描述】:

我编写了一个使用 XPC 服务与其助手进行通信的应用程序。应用程序在 Xcode 中启动并按预期工作。

但是,当我在Archive 之后尝试在 Xcode 之外运行应用程序时,会出现以下错误。

HideMyMac[27183:936477] XPCService error: Error
Domain=NSCocoaErrorDomain Code=4097 "connection to service named 
io.jabbari.HideMyMac.HideMyMac-XPCService" UserInfo=
{NSDebugDescription=connection to service named  
io.jabbari.HideMyMac.HideMyMac-XPCService}

这是 Github 上此应用程序的 the source。我通常会在我的代码中提供源代码,但是,xml 样式的 plist 会使页面变得混乱并从帖子中删除。

这是我尝试过的:

第 1 步:更新 - 主应用目标 -> 功能选项卡

  • 开启“应用沙盒”

  • 打开“应用组”

  • 添加了一个应用组 - 'XYZ'

第 2 步:更新 - 助手目标 -> 功能选项卡

  • 开启“应用沙盒”

  • 启用“传出连接(客户端)”

  • 打开“应用组”

  • 添加了一个应用组 - 'XYZ'

我错过了什么?

【问题讨论】:

    标签: xcode swift macos


    【解决方案1】:

    这对于 StackOverflow 来说可能不是一个好问题,因为它是一个非常特定于项目的配置问题。

    您遇到的实际问题是 XPCService 立即崩溃:

    HideMyMac[5999]: XPCService error: Error Domain=NSCocoaErrorDomain Code=4097 "connection to service named io.jabbari.HideMyMac-XPCService" UserInfo={NSDebugDescription=connection to service named io.jabbari.HideMyMac-XPCService}
    ReportCrash[5995]: Saved crash report for HideMyMac-XPCService[6000] version ??? to …
    

    这是因为动态加载器在预期位置找不到SMJobKit框架:

    Dyld Error Message:
    Library not loaded: @rpath/SMJobKit.framework/Versions/A/SMJobKit
    Referenced from: /Users/USER/Library/Developer/Xcode/Archives/2016-02-24/HideMyMac 24.02.16, 16.32.xcarchive/Products/Applications/HideMyMac.app/Contents/XPCServices/HideMyMac-XPCService.xpc/Contents/MacOS/HideMyMac-XPCService
    Reason: image not found
    

    因此,您应该在 Xcode 的构建阶段选项卡中检查复制文件/嵌入框架阶段。

    【讨论】:

    • 您好,您是如何获得崩溃报告的。我没有得到那个错误。
    • 我已经更新了 git repo 来修复你遇到的错误。这是因为我没有推送将框架添加到主项目的 pod 文件更新
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-06-20
    • 2015-07-23
    • 2018-09-29
    相关资源
    最近更新 更多