iMessage:仅具有 Google/Analytics Pod 依赖性会导致 _NSXPCDistantObject 异常

iMessage: Merely having the Google/Analytics Pod dependency causes a _NSXPCDistantObject exception

我有一个 iOS 9+ 项目,它同时使用 Google Analytics 和 Firebase for Analytics。

这个项目还有一个 iMessage 扩展。该扩展针对 iOS 10.0

如果我像这样在我的 pod 文件中保留 GA Pods:

pod 'Google/Analytics'
pod 'GoogleIDFASupport'

然后我在启动第一个控制器(MSMessagesAppViewController 的子类)时遇到了常见的、可怕的异常:

**[_NSXPCDistantObject _remoteViewDidBecomeReadyForDisplay]: unrecognized selector sent to instance**

此错误发生在系统内部,没有堆栈跟踪可返回我的任何代码。

另外:我已经注释掉了所有 GA 代码,包括日志记录、配置和初始化。我只有 GA Pods 链接到目标,甚至没有使用。异常仍然存在。

现在,如果我注释掉 GA Pods,一切正常,第一个控制器加载。

我的 GA 版本被 Cocoa 提取Pods:

Using GoogleAnalytics (3.17.0)
Using GoogleIDFASupport (3.14.0)

所以我面临一个选择:花更多时间寻找可以与 iMessage 扩展一起使用的 GA 版本,或者将我的系统中使用 GA 的部分迁移为使用 Firebase Analytics。

您可以使用全新的空白 iMessage 目标重现此问题,该目标启动 Hello World 主屏幕,并向其中添加 GA Pod。

GA 是否试图挂钩 UI 中不存在的内容?

对解决方案有什么建议吗?

问题出在 pod 本身; Google 已弃用。变化

pod 'Google/Analytics'

pod 'GoogleAnalytics'