ios - Firebase SDK for iOS 更新导致 Zombie Object 崩溃
问题描述
我们将 Firebase iOS SDK 版本从 6.32.2 更新到了最新版本:7.10.0
使用的库(及其依赖项):
- Firebase 分析
- Firebase Crashlytis
- Firebase 在应用程序消息中
- Firebase 消息传递
- Firebase 性能
- Firebase 远程配置
设置是手动完成的(基于提供的 README.md)并且没有使用依赖管理器。最新版本没有任何问题,但新版本在方案的诊断设置中启用“僵尸对象”时会导致以下崩溃:
* thread #20, queue = 'com.google.GDTCCTUploader', stop reason = EXC_BAD_ACCESS (code=1, address=0x555555555552)
* frame #0: 0x00007fff20176876 libobjc.A.dylib`object_setClass + 119
frame #1: 0x00007fff20430bd2 CoreFoundation`-[NSObject(NSObject) __dealloc_zombie] + 170
frame #2: 0x00007fff207f44d6 Foundation`-[NSOperation dealloc] + 281
frame #3: 0x00007fff2018f834 libobjc.A.dylib`objc_object::sidetable_release(bool, bool) + 174
frame #4: 0x00007fff2007f42f libsystem_blocks.dylib`_Block_release + 128
frame #5: 0x00007fff2007f42f libsystem_blocks.dylib`_Block_release + 128
frame #6: 0x00007fff2007f42f libsystem_blocks.dylib`_Block_release + 128
frame #7: 0x0000000104b44797 P2021_DEV`__destroy_helper_block_e8_32s40s48s + 24
frame #8: 0x00007fff2007f42f libsystem_blocks.dylib`_Block_release + 128
frame #9: 0x000000010c4219c8 libdispatch.dylib`_dispatch_client_callout + 8
frame #10: 0x000000010c428440 libdispatch.dylib`_dispatch_lane_serial_drain + 1222
frame #11: 0x000000010c428f67 libdispatch.dylib`_dispatch_lane_invoke + 439
frame #12: 0x000000010c434de2 libdispatch.dylib`_dispatch_workloop_worker_thread + 882
frame #13: 0x00007fff61167499 libsystem_pthread.dylib`_pthread_wqthread + 314
frame #14: 0x00007fff61166467 libsystem_pthread.dylib`start_wqthread + 15
试用应用程序时的随机 Xcode 控制台输出:
objc[73435]: Class _NSZombie_NSURLRequest is implemented in both ?? (0x7fb7c65124b0) and ?? (0x7fb7c6212760). One of the two will be used. Which one is undefined.
objc[73678]: Class _NSZombie_NSURLSessionEffectiveConfiguration is implemented in both ?? (0x7f8b0d586770) and ?? (0x7f8b0e2ec570). One of the two will be used. Which one is undefined.
objc[73678]: Class _NSZombie_NWConcrete_nw_activity is implemented in both ?? (0x7f8b0eea9ac0) and ?? (0x7f8b3f423580). One of the two will be used. Which one is undefined.
objc[73678]: Class _NSZombie___CFN_TaskMetrics is implemented in both ?? (0x7f8b1857beb0) and ?? (0x7f8b18b8fea0). One of the two will be used. Which one is undefined.
这可能是什么原因造成的?我没有在 GitHub 中创建错误票,因为这似乎是一个设置问题。
解决方案
推荐阅读
- pyinstaller - 我使用 PySimpleGUI 和 cx_oracle 创建了小型桌面应用程序,并创建了无法在另一台机器上运行的 exe
- javascript - 使用 Vue I18n 和大内容文本 html 的最佳方式
- cmd - FTP 响应 150(文件状态正常;即将打开数据连接)挂起?
- kiwi-tcms - 如何开始使用 Kiwi API?
- excel - 对excel中的行组执行操作
- linux - shell脚本中的算术运算
- fullcalendar - Fullcalendar v4 使用反向背景渲染的背景事件颜色错误
- android - 如何在 Android 上对 PCM 音频文件进行下采样
- java - org.eclipse.jetty.util.ssl.SslContextFactory$Client ClassNotFoundException 升级到 Jetty Server 9.4.16
- php - PHP Xdebug log show time-out connection error. Using Atom IDE