Firebase ANR日志疑问:触发时用户是否在IdGatewayActivityNew页面?
ANR触发时用户页面的确认及堆栈分析
我正在排查严重影响应用用户体验的频繁ANR问题,在Firebase控制台获取到以下日志和堆栈信息,需确认ANR触发时用户是否处于IdGatewayActivityNew页面:
Firebase日志标签页信息
1 screen_view Parameters firebase_screen_class: IdGatewayActivityNew 2 07:08:54.217 pm screen_view Parameters firebase_screen_class: OnboardingActivity 3 07:08:54.200 pm session_start
堆栈跟踪标签页信息
#00 pc 0x881b0 libc.so (syscall + 32) (BuildId: 69c79353981108b70293a7a6056f9a50) #01 pc 0x3a9984 libart.so (art::ConditionVariable::WaitHoldingLocks(art::Thread*) + 140) (BuildId: 289d75599f6112d5757113220599e90b) #02 pc 0x726740 libart.so (art::ThreadList::WaitForOtherNonDaemonThreadsToExit(bool) + 336) (BuildId: 289d75599f6112d5757113220599e90b) #03 pc 0x34dac0 libart.so (art::JII::DestroyJavaVM(_JavaVM*) + 32) (BuildId: 289d75599f6112d5757113220599e90b) #04 pc 0xbf1e8 libandroid_runtime.so (android::AndroidRuntime::start(char const*, android::Vector<android::String8> const&, bool) + 1016) (BuildId: dbcfd4c080a40e93547a00f7932647f9) #05 pc 0x2684 app_process64 (main + 1580) (BuildId: 6a17c4f390bb08d15280ace738df870c) #06 pc 0x8436c libc.so (__libc_init + 100) (BuildId: 69c79353981108b70293a7a6056f9a50)
该堆栈跟踪对应线程标记为Triggered ANR和Root blocking,调用链指向VM销毁流程(DestroyJavaVM),暂时无法直接关联到具体页面的业务逻辑。
关于用户页面的确认
从日志时间戳来看:
- 07:08:54.200 pm 触发
session_start - 07:08:54.217 pm 触发
OnboardingActivity的screen_view
而IdGatewayActivityNew的screen_view没有标注时间戳,仅在日志列表中排在首位——Firebase日志的序号不代表时间顺序,仅为展示排序,因此不能仅凭序号判定用户在ANR时处于该页面。若要确认,需要补充该screen_view的时间戳,或查看ANR触发时刻的页面生命周期日志(如onResume/onPause事件)。
内容的提问来源于stack exchange,提问作者gianpaolo
相关产品推荐
相关产品推荐

