Fuchsia.session

添加时间:7

PROTOCOLS

启动器

fuchsia.session/launcher.fidl 中定义

用于启动会话的协议。

发布

启动 configuration 中详述的会话。

如果某个会话当前正在运行,则与正在运行的 将被销毁。

  • configuration 描述要启动的会话。
  • 如果未设置 configuration.session_url,则会发生 LaunchError.INVALID_ARGS 错误。
  • 如果 configuration.session_url,则出现错误 LaunchError.NOT_FOUND 无法解析。
  • 如果存在现有会话组件,则会发生 LaunchError.DESTROY_COMPONENT_FAILED 错误 无法销毁。此时,现有会话仍在运行。
  • 如果会话组件出现此错误,则会发生 LaunchError.CREATE_COMPONENT_FAILED 错误 无法启动。此时不会运行任何会话。

请求

名称类型
configuration LaunchConfiguration

响应

名称类型
payload Launcher_Launch_Result

生命周期

fuchsia.session/lifecycle.fidl 中定义

用于控制会话生命周期的协议。

添加时间:13

重启

重启会话。

这会停止现有会话,并使用同一个新会话 作为上一个会话网址。

在新会话组件创建并启动后返回。

  • 如果不存在会话,则会发生 LifecycleError.NOT_FOUND 错误。
  • 如果会话网址出现以下情况,则会发生 LifecycleError.RESOLVE_COMPONENT_FAILED 错误: 无法解析为组件。
  • 如果会话组件出现此错误,则会发生 LifecycleError.DESTROY_COMPONENT_FAILED 错误 无法销毁。之前的会话将继续存在于 则组件可能正在运行。
  • 如果会话组件出现此错误,则会发生 LifecycleError.CREATE_COMPONENT_FAILED 错误 无法启动。此时不会运行任何会话。

请求

<空>

响应

名称类型
payload Lifecycle_Restart_Result

开始

启动会话。

在创建和启动会话组件后返回。

  • 如果未提供 session_url,则会发生 LifecycleError.NOT_FOUND 错误 且未配置默认会话网址。
  • 如果会话已开始,则会发生 LifecycleError.ALREADY_STARTED 错误。
  • 如果 session_url 无法调用,则会发生 LifecycleError.RESOLVE_COMPONENT_FAILED 错误 解析为组件
  • 如果存在现有会话组件,则会发生 LifecycleError.DESTROY_COMPONENT_FAILED 错误 无法销毁。此时,现有会话仍在运行。
  • 如果会话组件出现此错误,则会发生 LifecycleError.CREATE_COMPONENT_FAILED 错误 无法启动。此时不会运行任何会话。

请求

名称类型
payload LifecycleStartRequest

响应

名称类型
payload Lifecycle_Start_Result

停止

停止会话。

返回会话组件销毁后返回的值。

  • 如果会话尚未开始,则会发生 LifecycleError.NOT_FOUND 错误。
  • 如果会话组件出现此错误,则会发生 LifecycleError.DESTROY_COMPONENT_FAILED 错误 无法销毁。之前的会话将继续存在于 则组件可能正在运行。

请求

<空>

响应

名称类型
payload Lifecycle_Stop_Result

重启

fuchsia.session/restarter.fidl 中定义

用于重启当前正在运行的会话的协议。

重启

重启会话。

  • 如果不存在,则会发生 RestartError.NOT_RUNNING 错误 让当前正在运行的会话重新启动。
  • 如果存在现有会话组件,则会发生 RestartError.DESTROY_COMPONENT_FAILED 错误 无法销毁。此时,现有会话仍在运行。
  • 如果会话组件出现此错误,则会发生 RestartError.CREATE_COMPONENT_FAILED 错误 无法启动。此时不会运行任何会话。

请求

<空>

响应

名称类型
payload Restarter_Restart_Result

结构体

Launcher_Launch_Response

fuchsia.session/launcher.fidl 中定义

<空>

Lifecycle_Restart_Response

fuchsia.session/lifecycle.fidl 中定义

<空>

Lifecycle_Start_Response

fuchsia.session/lifecycle.fidl 中定义

<空>

Lifecycle_Stop_Response

fuchsia.session/lifecycle.fidl 中定义

<空>

Restarter_Restart_Response

fuchsia.session/restarter.fidl 中定义

<空>

精英

LaunchError 柔性

类型:uint32

fuchsia.session/launcher.fidl 中定义

启动会话时发生的错误。

名称说明
1

会话的 LaunchConfiguration 格式错误。

2

解析会话的组件网址时出错。

3

无法销毁会话组件。

4

无法创建会话组件。

LifecycleError 柔性

类型:uint32

fuchsia.session/lifecycle.fidl 中定义

更新会话生命周期时发生的错误。

添加时间:13

名称说明
1

会话尚未启动或未配置默认会话网址。

2

会话已开始。

3

无法解析会话组件。

4

无法创建会话组件。

5

无法销毁会话组件。

RestartError 柔性

类型:uint32

fuchsia.session/restarter.fidl 中定义

重启会话时发生的错误。

名称说明
1

目前没有正在运行的会话可重启。

2

解析会话的组件网址时出错。

3

无法销毁会话组件。

4

无法创建会话组件。

LaunchConfiguration

fuchsia.session/launcher.fidl 中定义

描述要启动的会话。

Ordinal字段类型说明
session_url string[4096]

会话的组成部分网址。

config_capabilities vector<fuchsia.component.decl/Configuration>

将提供给会话的配置功能。

在预期用例中,会话组件将使用特定的 具有 transitional 可用性的配置功能。如果 没有为会话提供过渡功能,则配置值 资源包中的资源。使用 config_capabilities,则此处指定的配置值将是 。因此,可能会覆盖会话组件的配置值 是按照此格式设置的

添加时间:HEAD

LifecycleStartRequest

fuchsia.session/lifecycle.fidl 中定义

Ordinal字段类型说明
session_url string[4096]

会话的组成部分网址。

可选。如果省略此设置,系统会使用已配置的默认会话网址(如果有)。

联合体

Launcher_Launch_Result 严格

fuchsia.session/launcher.fidl 中定义

Ordinal变体类型说明
response Launcher_Launch_Response
err LaunchError

Lifecycle_Restart_Result 严格

fuchsia.session/lifecycle.fidl 中定义

Ordinal变体类型说明
response Lifecycle_Restart_Response
err LifecycleError
framework_err internal

Lifecycle_Start_Result 严格

fuchsia.session/lifecycle.fidl 中定义

Ordinal变体类型说明
response Lifecycle_Start_Response
err LifecycleError
framework_err internal

Lifecycle_Stop_Result 严格

fuchsia.session/lifecycle.fidl 中定义

Ordinal变体类型说明
response Lifecycle_Stop_Response
err LifecycleError
framework_err internal

Restarter_Restart_Result 比较严格

fuchsia.session/restarter.fidl 中定义

Ordinal变体类型说明
response Restarter_Restart_Response
err RestartError