Firebase自动屏幕上报失效,崩溃日志仅展示自定义屏幕浏览事件
Firebase自动屏幕事件绑定崩溃功能失效排查项
- 检查
Info.plist配置正确性:确认FirebaseAutomaticScreenReportingEnabled的类型是布尔值而非字符串,且该配置是添加到主应用Target对应的Info.plist文件中,而非测试/扩展Target的配置文件 - 检查UIViewController生命周期方法调用:自动屏幕采集依赖UIViewController的
viewDidAppear:方法的Hook生效,若你项目中的VC基类重写了viewDidAppear:却没有调用[super viewDidAppear:animated],会导致自动采集失效 - 检查Analytics全局采集开关:确认代码中没有调用
[FIRAnalytics setAnalyticsCollectionEnabled:NO]关闭全局采集,若全局采集被关闭,所有自动上报事件都会停止 - 检查Firebase控制台关联开关:进入Firebase控制台的Crashlytics设置页,确认与Analytics共享数据的开关处于开启状态,该开关关闭时崩溃报告无法关联Analytics上报的屏幕事件
- 检查自定义屏幕上报逻辑冲突:确认代码中手动调用
setScreenName:screenClass:或者手动上报FIREventScreenView事件的逻辑没有错误覆盖系统VC的自动采集结果 - 验证事件上报状态:在Xcode的Scheme启动参数中添加
-FIRAnalyticsDebugEnabled参数,运行应用切换页面时查看日志,确认系统VC的screen_view事件是否正常上报,是否存在过滤或报错 - 检查系统版本兼容性:Firebase 8.6.0最低支持iOS 12系统,若你的应用部署目标低于iOS 12,低版本系统上的自动屏幕采集功能会失效
- 检查第三方库冲突:确认项目中没有其他第三方SDK(埋点、路由、页面统计类)Hook了UIViewController的
viewDidAppear:方法,同类Hook冲突会导致Firebase的采集逻辑无法被触发
内容的提问来源于stack exchange,提问作者Mahmoud Adam
相关产品推荐
相关产品推荐

