当iPhone Simulator(和Macbook)连接在4G网络上时,Firebase crashlytics在日志中发布数百条“已取消”消息

Sti*_*Sti 8 ios firebase crashlytics

今天(在模拟器中)调试应用程序时,我注意到在几分钟的时间内,日志中输出了数百条这些消息:

Task <86E3C73C-E007-4D21-9EE5-C7F9F86EC1C4>.<251> load failed with error Error Domain=NSURLErrorDomain Code=-999 "cancelled" UserInfo={NSErrorFailingURLStringKey=https://reports.crashlytics.com/sdk-api/v1/platforms/ios/apps/my.bundle.id/reports, NSErrorFailingURLKey=https://reports.crashlytics.com/sdk-api/v1/platforms/ios/apps/my.bundle.id/reports, _NSURLErrorRelatedURLSessionTaskErrorKey=(
    "BackgroundUploadTask <86E3D75C-E017-4D31-9EE5-C7F9F86EC9C4>.<251>",
    "LocalUploadTask <86E3C35C-E007-4D21-9EE5-C4F9F86EC1C4>.<251>"
), _NSURLErrorFailingURLSessionTaskErrorKey=BackgroundUploadTask <86E3C75C-E017-4D21-9EE5-C7A9F86FC4C4>.<251>, NSLocalizedDescription=cancelled} [-999]
Run Code Online (Sandbox Code Playgroud)

即使我没有触摸应用程序中的任何内容,它们仍会继续出现。

该错误表明请求被取消。但是为什么要取消它们呢?我知道我可以task.cancel()自己调用URLSessionTasks以产生相同的错误,但是我无法控制Firebase Crashlytics在应用程序后台执行的操作。

每当我什么都不做时,这些日志每2秒就会发送一次。如果我开始在应用程序中四处点击,它们就会泛滥成灾。

这是每个日志的增量。<251>在我粘贴的错误消息中说的地方,此数字在每条消息中都会递增。这是我在短时间内收到的第251条取消消息。似乎它一直在重试。

我确实有互联网连接,因为我的应用程序的其余部分都依赖于它(并且可以工作)。在调试网络流量时,似乎根本没有触发这些crashlytics请求。我只看到来自我自己的网络呼叫的流量,因此我认为可以放心,它不是会耗尽用户移动数据的错误。

我能想到的唯一与此有关的事实是,我们办公室的WiFi当前正在关闭,因此我正在通过自己的iPhone X的4G网络共享互联网。但是请记住,我实际上是在Mac上调试模拟器。因此,模拟器实质上是使用4G网络。

知道为什么会发生或如何解决?非常烦人的输出。在4G上调试我的实际设备时,这不会发生,并且我认为在Mac处于WiFi上时调试模拟器时,它不会发生(尽管由于某些原因我现在无法尝试)。

编辑:最奇怪的部分是,我在执行此操作时偶然发现自己的dev-app崩溃,实际上我收到了Firebase的电子邮件,称他们在几分钟后检测到崩溃。所以呢..?即使我收到了这些取消的消息,崩溃报告显然也可以工作。

Mar*_*ark 1

您是否正在使用带有自定义 ssl 根证书的代理?我使用带有自定义 ssl 根证书的代理工具来记录我的 https 请求,但显然 Crashlytics 不喜欢这样......