启动画面序列
在Cobalt上启动Web应用程序时,可能会显示最多三个启动画面:
- 来自系统的一个
- 来自Cobalt的一个
- 来自Web应用程序本身的一个
系统的启动画面通常是从主屏幕上的应用程序图标到由平台指定的静态资源的过渡(这是Cobalt无法控制的)。Cobalt的启动画面在Cobalt能够进行渲染的时候显示,直到Web应用程序加载完毕。Web应用程序的启动画面是在加载Web应用程序时立即显示的HTML内容(这可能类似于典型的启动画面,但实际上可以是应用程序选择在启动时显示的任何内容)。
Cobalt启动画面优先级顺序
Cobalt启动画面必须指定为文档的URL。该文档必须是自包含的,或者其所有引用必须是本地的。这意味着文档不应引用任何外部CSS、JavaScript或图像文件等。这简化了缓存过程,只需缓存一个文档,而无需跟踪引用。所有备用启动画面必须引用本地文档。这样,即使没有网络连接,也可以显示备用启动画面。具体来说,备用启动画面的URL及其引用应以file:///或h5vcc-embedded://开头。此外,可以使用none来指定不应构建Cobalt启动画面;一旦页面加载完成,系统的启动画面序列将直接过渡到应用程序的启动画面序列。
Cobalt启动画面按以下优先级顺序之一:
-
**Web缓存启动画面:**如果Web应用程序指定的启动画面已从之前的Cobalt实例缓存,它将在启动时加载。缓存启动画面的键基于初始URL的主机和路径,不包括查询或哈希。如果在启动时有网络连接,并且正在处理初始Web应用程序URL,将使用链接元素的自定义
rel="splashscreen"属性来指定和缓存用于将来运行的启动画面URL。 -
**命令行备用启动画面:**这是通过系统以命令行参数
--fallback_splash_screen_url指定的,用于在缓存不可用时使用。当本地缓存存储不可用、缓存已清除或首次启动应用程序时,就会出现这种情况。 -
**构建时备用启动画面:**如果Web缓存启动画面不可用,并且系统未传递命令行参数,则可以使用CobaltExtensionConfigurationApi的备用启动画面。移植者应在
configuration.cc中设置CobaltFallbackSplashScreenUrl值为启动画面的URL。 -
**默认启动画面:**如果没有可用的Web缓存启动画面,并且未设置命令行和CobaltExtensionConfigurationApi的备用启动画面,将使用默认启动画面。在
configuration_defaults.cc中设置为引用黑色启动画面。
Web可更新性
由于Cobalt解析链接元素的rel="splashscreen"属性以获取从初始URL获取的内容中的启动画面URL,因此应用程序开发人员可以通过更改链接元素中的该属性来更新启动画面。在下一次加载应用程序时,新的启动画面将被缓存,在下一次加载应用程序时,将显示新的缓存启动画面。
例如,初始URL的文档可以包含以下内容:
<link rel="splashscreen" href="https://www.example.com/self-contained.html">