在 iOS NEDNSProxyProvider 网络扩展上安装 Firebase / Crashlytics

Posted

技术标签:

【中文标题】在 iOS NEDNSProxyProvider 网络扩展上安装 Firebase / Crashlytics【英文标题】:Install Firebase / Crashlytics on iOS NEDNSProxyProvider Network extension 【发布时间】:2019-06-26 04:01:35 【问题描述】:

我有一个带有网络扩展的 ios 应用,我正在尝试在两者上安装 Firebase/Crashlytics:

宿主应用程序 (com.mycompany.appname) NEDNSProxyProvider 网络扩展 (com.mycompany.appname.dnsproxy)

我已经在 Cocoapods 的两个 targhet 上安装了 Firebase,并且我成功地在主机应用上配置了 crashlytics,触发了崩溃并在 firebase 仪表板中看到了崩溃。

然后我尝试先使用以下步骤在网络扩展中启用 crashlytics:

来自How to use Crashlytics with iOS / OS X today view extensions?

    GoogleService-Info.plist 从主机应用复制到网络扩展 将运行脚本添加到网络扩展目标 在NEDNSProxyProvider子类方法override func startProxy(options: [String: Any]? = nil, completionHandler: @escaping (Error?) -> Void) 我已经添加:
FirebaseApp.configure()
Crashlytics.sharedInstance().crash()

显然,扩展程序崩溃了,但没有报告发送到 Firebase 仪表板。

在控制台中我可以看到:

5.16.0 - [Firebase/Core][I-COR000008] The project's Bundle ID is inconsistent with either the Bundle ID in 'GoogleService-Info.plist', or the Bundle ID in the options if you are using a customized options. To ensure that everything can be configured correctly, you may need to make the Bundle IDs consistent. To continue with this plist file, you may change your app's bundle identifier to 'com.mimecast.SecurityAgent'. Or you can download a new configuration file that matches your bundle identifier from https://console.firebase.google.com/ and replace the current one.

这是有道理的,目标具有不同的 bundleID。

所以我在 Firebase 项目中创建了另一个具有正确捆绑 ID com.mycompany.appname.dnsproxy 的应用,我已经下载了新的 GoogleService-Info.plist,运行该应用并按照初始应用程序设置,但显然网络扩展从不调用 Firebase 后端,没有记录引发的崩溃,我什至无法完成初始设置,我被困在 Checking if the app has communicated with our servers. You may need to uninstall and reinstall your app. 步骤中。

有什么想法吗?我在控制台中看不到任何奇怪的 Firebase 日志或错误。

【问题讨论】:

你有没有得到这个答案?我的操作扩展也遇到了同样的问题。 我遇到同样的问题 @Andy 不抱歉 :( 【参考方案1】:

根据开发文档,将 crashlytics 和 firebase 域添加到 matchDomainsNoSearch 属性中。

【讨论】:

以上是关于在 iOS NEDNSProxyProvider 网络扩展上安装 Firebase / Crashlytics的主要内容,如果未能解决你的问题,请参考以下文章

iOS - NSInternalInconsistencyException 在 iOS 9 和 10 上发生,但在 iOS 11 上运行良好

iOS8 扩展 - 在 iOS 5/6/7 上会发生啥?

如何在 iOS 4 上运行 iOS 5/ARC 项目

iOS 纵横比约束在 iOS 7 上中断,适用于 iOS 8

iOS 5 MapKit,MKPlacemark,在 iOS 5 上运行 iOS 4.3 应用程序

[iOS] 在 ios10 中使用 imessage