gpt4 book ai didi

ios - 如何使用 mac-catalyst 应用程序的 CloudKit 数据库订阅调试 "Error acquiring assertion"?

转载 作者:行者123 更新时间:2023-12-01 15:55:11 25 4
gpt4 key购买 nike

我有一个可以运行的原生 iPhone/iPad 应用程序,我现在正尝试将它也用作 Mac Catalyst 应用程序。一切似乎都在工作,除了当我在 iOS 版本上输入一些东西时,它“破坏”了 macOS 版本——我使用 CloudKit 和 CloudKit 订阅来监听数据库中的变化。

我把这个记录到日志中 3 次:

2020-04-25 09:58:35.612887+0300 MyApp[2871:206093] [assertion] Error acquiring assertion: <NSError: 0x600000d4cb40; domain: RBSAssertionErrorDomain; code: 2; reason: "Specified target process does not exist">
2020-04-25 09:58:35.613919+0300 MyApp[2871:206093] [assertion] Error acquiring assertion: <NSError: 0x600000d4d290; domain: RBSAssertionErrorDomain; code: 2; reason: "Specified target process does not exist">
2020-04-25 09:58:35.615102+0300 MyApp[2871:206093] [assertion] Error acquiring assertion: <NSError: 0x600000d4de00; domain: RBSAssertionErrorDomain; code: 2; reason: "Specified target process does not exist">

这种行为真的很奇怪。 macOS 版本实际上并没有崩溃,但主窗口消失了,我必须在 XCode 中重建它并再次运行它。我试过在通知流中添加断点等,但没有任何捕获,所以我真的很难过。收到通知时,不会调用任何常用的应用程序方法。同样的问题出现在 Debug模式下,无论是模拟器和设备,还是在生产中。

真的希望得到一些指示,在哪里/如何调试这种问题。我检查了系统日志,也找不到任何内容。

最佳答案

刚刚自己遇到了这个问题,并最终弄清楚了:您的机器上可能有多个应用程序实例(具有该捆绑 ID),并且推送通知服务正试图启动错误的二进制文件来传递通知。

由于 Catalyst 应用程序在尝试打开多个实例时会被破坏,因此此后台启动会杀死您在调试器中运行的应用程序。

就我而言,我在/Applications 中安装了 App Store 版本的应用程序(在我开始添加 CloudKit 之前),并且在我的 Xcode 构建根目录中安装了我当前的开发二进制文件。

希望有帮助!

关于ios - 如何使用 mac-catalyst 应用程序的 CloudKit 数据库订阅调试 "Error acquiring assertion"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61422245/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com