0

我有一个启动器活动,它的视图 (XML) 有一个底部导航菜单、一个侧边抽屉和一个 FrameLayout 作为片段容器。

在查看跟踪日志时,我们发现某些服务需要花费大量时间,因此 API 调用(从该服务完成)被延迟。

服务连接后将调用下一个屏幕(为主页添加片段)。

我重构了一个单例而不是服务,并在不等待服务启动的情况下调用下一个屏幕

但令人惊讶的是,启动时间实际上增加了

在进一步调查中,我发现之前绘制活动框架然后片段框架的渲染器线程现在不首先绘制活动框架,它结合了两者进行绘制

Creating EGLContext在应该绘制活动框架之后,渲染器线程上有一个间隙。

这导致冷启动显示时间增加,而用户看到屏幕的实际时间减少

如何确保在片段之前呈现冷启动显示

4

0 回答 0