是否可以将 Crashlytics 与扩展一起使用?

Is it possible to use Crashlytics with an extension?

有一些关于此的现有问题和信息(例如 How to use Crashlytics with iOS / OS X today view extensions?),但它们非常非常古老,使用不再存在的 API,具有相互矛盾的信息,并且通常是一团糟。

我的问题很简单 - 是否可以 运行 扩展程序中的 Crashlytics?特别是通知服务扩展?

如果有人有任何最新的分步说明,我将不胜感激。我尝试了一些实验,但没有任何效果。但实际上我什至看不出它实际上是如何工作的——因为应用程序中的崩溃会在下次应用程序 运行s 时上传到仪表板。但是,如果将 Crashlytics 添加到扩展程序中,应用程序如何知道扩展程序中发生了崩溃?如果应用程序和扩展程序使用共享组,则可以通过组中的文件在扩展程序和应用程序之间共享 crashlytics 信息,但在 answers/references 的 none 中关于 [=18] =] 这个方面有没有提到过。

我已经成功完成了扩展,但它很棘手(我不知道是否官方支持)。没错,主应用程序不知道扩展程序何时崩溃,因此您需要确保在进程启动时从扩展程序启动 Crashlytics。对于 NSE,我在 didReceive(:) 函数中启动它,因为这是流程的起点。

每个扩展程序也有自己单独的 Google-Info.plist 文件,因此它与主应用程序分开报告。