结构
CapabilityRef
在 fuchsia.component.decl/relative_refs.fidl 中定义
对此组件中声明的功能的引用。
野战 | 类型 | 说明 | 默认 |
---|---|---|---|
name |
string[100]
|
无默认取景方式 |
ChildRef
在 fuchsia.component.decl/relative_refs.fidl 中定义
对组件的其中一个子实例的引用。
野战 | 类型 | 说明 | 默认 |
---|---|---|---|
name |
child_name
|
由父级分配给子级的名称。如果设置了 |
无默认取景方式 |
collection |
name
|
|
无默认取景方式 |
CollectionRef
在 fuchsia.component.decl/relative_refs.fidl 中定义
对组件的其中一个集合的引用。
野战 | 类型 | 说明 | 默认 |
---|---|---|---|
name |
name
|
无默认取景方式 |
ConfigType
在 fuchsia.component.decl/config.fidl 中定义
野战 | 类型 | 说明 | 默认 |
---|---|---|---|
layout |
ConfigTypeLayout
|
无默认取景方式 | |
parameters |
vector<LayoutParameter>?
|
无默认取景方式 | |
constraints |
vector<LayoutConstraint>
|
无默认取景方式 |
DebugRef
在 fuchsia.component.decl/relative_refs.fidl 中定义
对环境调试功能的引用。
<EMPTY>
EnvironmentRef
在 fuchsia.component.decl/relative_refs.fidl 中定义
对环境的引用。
<EMPTY>
FrameworkRef
在 fuchsia.component.decl/relative_refs.fidl 中定义
对组件框架本身的引用。
<EMPTY>
NameMapping
在 fuchsia.component.decl/offer.fidl 中定义
用于在 2 个名称之间创建映射的类型。用于重命名 FIDL 声明中的服务或组件实例。
野战 | 类型 | 说明 | 默认 |
---|---|---|---|
source_name |
name
|
源实例中使用的名称。 |
无默认取景方式 |
target_name |
name
|
目标实例中使用的名称。 |
无默认取景方式 |
ParentRef
在 fuchsia.component.decl/relative_refs.fidl 中定义
对组件的父实例的引用。
<EMPTY>
ProgramRef
在 fuchsia.component.decl/relative_refs.fidl 中定义
对组件程序的引用。
<EMPTY>
ResolvedConfig
在 fuchsia.component.decl/config.fidl 中定义
完全由组件管理器解析的配置。
野战 | 类型 | 说明 | 默认 |
---|---|---|---|
fields |
vector<ResolvedConfigField>
|
无默认取景方式 | |
checksum |
ConfigChecksum
|
无默认取景方式 |
ResolvedConfigField
在 fuchsia.component.decl/config.fidl 中定义
野战 | 类型 | 说明 | 默认 |
---|---|---|---|
key |
string
|
无默认取景方式 | |
value |
ConfigValue
|
无默认取景方式 |
SelfRef
在 fuchsia.component.decl/relative_refs.fidl 中定义
对组件本身的引用。
<EMPTY>
VoidRef
在 fuchsia.component.decl/relative_refs.fidl 中定义
对故意缺失的优惠来源的引用。
<EMPTY>
枚举
AllowedOffers 严格
类型:uint32
在 fuchsia.component.decl/collection.fidl 中定义
可针对集合中的子项进行定位的优惠类型。
名称 | 值 | 说明 |
---|---|---|
STATIC_ONLY |
1 |
只有静态优惠可以定位到集合中的组件。“静态优惠”是指 这是默认行为。 |
STATIC_AND_DYNAMIC |
2 |
静态优惠和动态优惠都可以定位到集合中的组件。“静态优惠”是指 |
可用性严格
类型:uint32
在 fuchsia.component.decl/offer.fidl 中定义
描述功能的预期可用性。
某些功能可能并非在所有系统配置中都有。在这种情况下,可用性将沿着公开/优惠/使用链声明为 OPTIONAL
,并且在系统配置没有必要路由或提供特定功能(例如,无头系统上的图形功能)时,该功能将从 void
路由。
名称 | 值 | 说明 |
---|---|---|
必需 |
1 |
该功能必须可用。未能路由该 capability 就是错误。 |
可选 |
2 |
在 use 声明中:如果组件无法获取相应 capability,则可以正常运行。 在优惠/公开声明内:该功能在某些系统配置中可能不可用。因此,目标组件不得依赖于相应 capability。 |
SAME_AS_TARGET |
3 |
如果相应优惠或公开声明的目标需要该 capability,则此行为相当于 required。如果目标对 capability 有可选依赖项,则该行为等同于可选属性。对于想要根据内部组件更改其路由可用性的容器组件而言,这非常有用。 不允许在 use 声明中使用此值。 |
过渡 |
4 |
来源可以完全省略路由,甚至无需从 TRANSITIONAL 用于引入新功能的软转换。 添加次数:9
|
ConfigTypeLayout 灵活
类型:uint32
在 fuchsia.component.decl/config.fidl 中定义
名称 | 值 | 说明 |
---|---|---|
BOOL |
1 |
|
UINT8 |
2 |
|
UINT16 |
3 |
|
UINT32 |
4 |
|
UINT64 |
5 |
|
INT8 |
6 |
|
INT16 |
7 |
|
INT32 |
8 |
|
INT64 |
9 |
|
字符串 |
10 |
|
视频 |
11 |
DeliveryType(灵活)
类型:uint32
在 fuchsia.component.decl/types.fidl 中定义
DeliveryType
,可以在声明某项 capability 时使用,并指定当请求获得对这类 capability 的请求时,框架将从提供程序组件的传出目录下打开该 capability。
名称 | 值 | 说明 |
---|---|---|
即时 |
0 |
一旦某些使用方组件请求该功能,框架就会立即打开该功能。 |
ON_READABLE |
1 |
该框架将监控使用方组件所发出的连接请求的服务器端点上的 |
DependencyType 严格
类型:uint32
在 fuchsia.component.decl/offer.fidl 中定义
描述功能所隐含的依赖项类型。
名称 | 值 | 说明 |
---|---|---|
强劲 |
1 |
强依赖项,使用它的组件可能需要该依赖项。 |
较差 |
2 |
能够形成循环的弱依赖项。使用弱依赖项的组件必须支持该依赖项在任意时间不可用。 |
耐用性严格
类型:uint32
在 fuchsia.component.decl/collection.fidl 中定义
集合中创建的组件实例的耐用性。
名称 | 值 | 说明 |
---|---|---|
即时 |
2 |
在父实例停止或明确销毁之前,实例会一直存在。 |
SINGLE_RUN |
3 |
实例会在创建时启动,并在停止时立即销毁。 |
EnvironmentExtend 严格
类型:uint32
在 fuchsia.component.decl/environment.fidl 中定义
指定如何分配所声明环境的初始属性集。
名称 | 值 | 说明 |
---|---|---|
无 |
0 |
环境没有初始属性集。 |
领域 |
1 |
环境的初始属性集继承自其领域。继承属性包括 |
OnTerminate 严格
类型:uint32
在 fuchsia.component.decl/child.fidl 中定义
描述此组件实例意外终止时要执行的操作。
名称 | 值 | 说明 |
---|---|---|
无 |
0 |
无操作,默认 |
重新启动 |
1 |
如果组件因任何原因终止,则触发系统正常重新启动。这是一项受组件框架安全政策控制的专用功能。 |
StartupMode 严格
类型:uint32
在 fuchsia.component.decl/child.fidl 中定义
说明可在哪些条件下启动组件。
名称 | 值 | 说明 |
---|---|---|
懒洋洋 |
0 |
仅当组件实例收到传入的功能请求或直接使用 |
耳朵 |
1 |
在父组件启动时或创建组件时(对于动态组件)自动启动组件实例。 |
StorageId 严格
类型:uint32
在 fuchsia.component.decl/capability.fidl 中定义
声明要用于键控组件的隔离存储目录的标识符。
名称 | 值 | 说明 |
---|---|---|
STATIC_INSTANCE_ID |
1 |
隔离存储目录使用组件 ID 索引中指定的组件实例 ID 进行键控。未在索引中列出的组件无法使用或打开此存储功能。 |
STATIC_INSTANCE_ID_OR_MONIKER |
2 |
隔离存储目录使用组件的实例 ID(如果在组件 ID 索引中指定)进行键控。否则,组件的存储功能名称将用于键控其隔离的存储目录。 |
表
儿童
在 fuchsia.component.decl/child.fidl 中定义
以静态方式声明子组件实例。
序数 | 野战 | 类型 | 说明 |
---|---|---|---|
1 |
name |
child_name
|
(必需)由父级分配给子级的名称。 必须为非空,在所有同级项中具有唯一性,并且仅包含以下字符:[a-z0-9-_.]。 |
2 |
url |
fuchsia.url/Url
|
(必需)子组件的网址。 不得为空,且必须是格式正确的网址。 |
3 |
startup |
StartupMode
|
(必需)组件实例的启动模式。 必须设置。 |
4 |
environment |
name
|
(可选)分配给此子级的环境。 可以未设置,在这种情况下,子级将继承父级组件的环境。如果设置此参数,则该名称必须引用 |
5 |
on_terminate |
OnTerminate
|
(可选,默认为 |
6 |
config_overrides |
vector<ConfigOverride>
|
要应用于子级基本配置的配置替换。 若要替换配置字段,父级字段必须将其标记为可变。 父级必须传递与子级声明的架构类型完全匹配的 添加数量:12
|
Collection
在 fuchsia.component.decl/collection.fidl 中定义
以静态方式声明组件实例集合。
序数 | 野战 | 类型 | 说明 |
---|---|---|---|
1 |
name |
name
|
(必需)集合的名称。在该集合中创建的实例的范围限定为此名称。 |
2 |
durability |
Durability
|
(必需)集合中实例的耐用性。 |
3 |
environment |
name
|
(可选)分配给此集合中的子实例的环境。 可以未设置;在这种情况下,此集合中的子级将继承父组件的环境。如果设置了此字段,则名称必须引用 |
4 |
allowed_offers |
AllowedOffers
|
(可选,默认值为 只有使用 |
5 |
allow_long_names |
bool
|
(可选,默认值为 只有使用 |
6 |
persistent_storage |
bool
|
(可选)动态子级实例及其后代使用的隔离存储空间中的数据在实例销毁后是否会保留。新的动态实例会继承先前实例的数据存储区。 此设置可被较低级别的集合替换,而后者是启用/停用此设置的集合的后代。 此设置适用于集合组件及其后代使用的所有存储空间。 默认值是继承自祖先集合的值(如果已设置),否则为 |
组件
在 fuchsia.component.decl/component.fidl 中定义
组件声明。
此类信息通常会在组件清单(.cm 文件)中编码(如果有),或在运行时由组件解析器针对没有这些信息的解析器生成。
序数 | 野战 | 类型 | 说明 |
---|---|---|---|
1 |
program |
Program
|
(可选)有关在执行组件时运行的程序的信息。 对不可执行组件而言省略。 |
2 |
uses |
vector<Use>
|
(可选)组件使用的功能列表。其中包括为组件提供的功能,这些功能安装在其传入命名空间中。 使用的功能必须是唯一且互不重叠的。 |
3 |
exposes |
vector<Expose>
|
(可选)组件提供的功能列表。其中包括对父项可见的 capability。父级可以 提供的功能必须唯一且互不重叠。 |
4 |
offers |
vector<Offer>
|
(可选)为组件的子级提供的功能列表。这些层包含给定子项可以 提供的功能必须唯一且互不重叠。 |
5 |
capabilities |
vector<Capability>
|
(可选)组件定义的功能列表。 |
6 |
children |
vector<Child>
|
(可选)组件静态实例化的子项。子级必须具有唯一的名称。 |
7 |
collections |
vector<Collection>
|
(可选)组件的集合。集合的名称必须各不相同。 |
8 |
environments |
vector<Environment>
|
(可选)此组件创建的环境列表。 环境会分配给子级,并控制子级组件运行时的各个方面。 |
9 |
facets |
fuchsia.data/Dictionary
|
(可选)关于组件的其他元数据。 |
10 |
config |
ConfigSchema
|
(可选)组件配置接口的架构。 |
ConfigField
在 fuchsia.component.decl/config.fidl 中定义
声明单个配置字段(键 + 类型)
序数 | 野战 | 类型 | 说明 |
---|---|---|---|
1 |
key |
ConfigKey
|
(必需)此配置字段的标识符。 此键将用于匹配替换值。 |
2 |
type |
ConfigType
|
(必需)配置值的类型。在构建和运行时,系统会根据此布局验证配置值。 |
3 |
mutability |
ConfigMutability
|
此字段的值的运行时替换项的允许来源。 添加数量:12
|
ConfigOverride
在 fuchsia.component.decl/child.fidl 中定义
用于覆盖子文件中特定配置字段的值的指令。
序数 | 野战 | 类型 | 说明 |
---|---|---|---|
1 |
key |
ConfigKey
|
|
2 |
value |
ConfigValue
|
ConfigSchema
在 fuchsia.component.decl/config.fidl 中定义
组件配置接口的架构。
序数 | 野战 | 类型 | 说明 |
---|---|---|---|
1 |
fields |
vector<ConfigField>
|
(必需)组件配置界面的有序字段。 |
2 |
checksum |
ConfigChecksum
|
(必需)配置声明的校验和。 |
3 |
value_source |
ConfigValueSource
|
(必需)用于解析配置值的策略。 |
ConfigSourceCapabilities
在 fuchsia.component.decl/config.fidl 中定义
序数 | 野战 | 类型 | 说明 |
---|
ConfigValueSpec
在 fuchsia.component.decl/config.fidl 中定义
单个配置值。系统会根据该字段在 ValuesData.values
中的偏移量与特定配置字段进行匹配。
序数 | 野战 | 类型 | 说明 |
---|---|---|---|
1 |
value |
ConfigValue
|
ConfigValuesData
在 fuchsia.component.decl/config.fidl 中定义
配置值文件的内容。定义组件配置的基础值。
序数 | 野战 | 类型 | 说明 |
---|---|---|---|
1 |
values |
vector<ConfigValueSpec>
|
组件配置的具体值。 |
2 |
checksum |
ConfigChecksum
|
配置架构的 SHA-256 校验和。必须与用于解析最终配置的组件清单和配置解析器库中的校验和匹配。 |
配置
在 fuchsia.component.decl/capability.fidl 中定义
声明配置功能。
如需详细了解配置功能,请参阅: https://fuchsia.dev/fuchsia-src/glossary#configuration-capability 或: https://fuchsia.dev/fuchsia-src/docs/concepts/components/v2/capabilities/configuration
序数 | 野战 | 类型 | 说明 |
---|---|---|---|
1 |
name |
name
|
(必需)此配置的名称 |
2 |
value |
ConfigValue
|
(必需)此配置的值。 |
DebugProtocolRegistration
在 fuchsia.component.decl/environment.fidl 中定义
将环境中的协议注册为调试功能。这样,环境中通过 source == debug
使用该 API 的任何组件都可以使用它。
如需详细了解协议,请参阅:https://fuchsia.dev/fuchsia-src/glossary#protocol
序数 | 野战 | 类型 | 说明 |
---|---|---|---|
1 |
source |
Ref
|
(必需)功能相对于组件本身的提供者。必须是 |
2 |
source_name |
name
|
(必填)用于标识所提供的协议的名称。 |
3 |
target_name |
name
|
(必需)提供 capability 的名称。 |
字典
在 fuchsia.component.decl/capability.fidl 中定义
声明字典功能。
序数 | 野战 | 类型 | 说明 |
---|---|---|---|
1 |
name |
name
|
(必需)此字典的名称。 在内置功能中必须是唯一的。 |
2 |
source |
Ref
|
(可选)用于初始化字典的内容来源。必须是 |
3 |
source_dictionary |
dictionary_path
|
(可选) 如果设置了 |
目录
在 fuchsia.component.decl/capability.fidl 中定义
声明由此组件支持的目录功能。
如需详细了解目录,请参阅:https://fuchsia.dev/fuchsia-src/glossary#directory
序数 | 野战 | 类型 | 说明 |
---|---|---|---|
1 |
name |
name
|
(必需)此目录的名称。 |
2 |
source_path |
string[1024]
|
(可选)组件的传出目录中的目录路径。 未针对内置功能进行设置。 |
3 |
rights |
fuchsia.io/Rights
|
(必需)组件可使用此目录设置的最大权限。 |
环境
在 fuchsia.component.decl/environment.fidl 中定义
声明用于配置大区的环境。
序数 | 野战 | 类型 | 说明 |
---|---|---|---|
1 |
name |
name
|
(必需)此环境的名称。 |
2 |
extends |
EnvironmentExtends
|
(必需)指定如何构建此环境的初始状态。 |
3 |
runners |
vector<RunnerRegistration>
|
(可选)此环境中可用的运行程序列表。 此列表决定了环境中任何组件可用的运行程序总数。 |
4 |
resolvers |
vector<ResolverRegistration>
|
(可选)组件解析器及其注册用于解析的网址架构的列表。这些注册决定了如何在领域中解析组件。如果组件网址方案与任何解析器都不匹配,且此环境从 |
5 |
debug_capabilities |
vector<DebugRegistration>
|
(可选)在组件管理器允许的情况下,向调试部分公开相应功能。 环境中的任何组件都可以通过带有 |
6 |
stop_timeout_ms |
uint32
|
(可选)组件在终止之前必须停止的时长(以毫秒为单位)。如果此环境从 |
EventStream
在 fuchsia.component.decl/capability.fidl 中定义
声明 event_stream capability
此类型不能在 fuchsia.component.decl.Component
中使用。它仅用于在 internal.Config
中声明的框架内置功能。
序数 | 野战 | 类型 | 说明 |
---|---|---|---|
1 |
name |
name
|
(必需)此事件流的名称。 在内置功能中必须是唯一的。 |
EventSubscription
在 fuchsia.component.decl/events.fidl 中定义
指示通过指定事件模式订阅的事件名称。
序数 | 野战 | 类型 | 说明 |
---|---|---|---|
1 |
event_name |
name
|
(必需)要订阅的事件名称。 |
ExposeConfiguration
在 fuchsia.component.decl/expose.fidl 中定义
声明向组件所在领域公开的配置功能,例如组件或其某一子项在运行时公开的功能。
序数 | 野战 | 类型 | 说明 |
---|---|---|---|
1 |
source |
Ref
|
(必需)功能相对于组件本身的提供者。必须是 |
2 |
source_name |
name
|
(必需)标识将其呈现给此组件所用配置的名称。 |
3 |
target |
Ref
|
(必需)公开 capability 的目的地。 |
4 |
target_name |
name
|
(必需)公开功能时所用的名称。 |
5 |
availability |
Availability
|
(可选,默认为 |
ExposeDictionary
在 fuchsia.component.decl/expose.fidl 中定义
声明向组件所在领域公开的字典,例如在运行时由组件或其子项公开的字典。
如需详细了解字典,请参阅:https://fuchsia.dev/fuchsia-src/glossary#dictionary
序数 | 野战 | 类型 | 说明 |
---|---|---|---|
1 |
source |
Ref
|
(必需)功能相对于组件本身的提供者。必须是 |
2 |
source_name |
name
|
(必需)用于标识呈现给此组件的字典的名称。 |
3 |
target |
Ref
|
(必需)提供字典的目的地:组件的领域或框架。 |
4 |
target_name |
name
|
(必需)公开功能时所用的名称。 |
5 |
availability |
Availability
|
(可选,默认为 |
6 |
source_dictionary |
string[1024]
|
(可选) 添加了:HEAD
|
ExposeDirectory
在 fuchsia.component.decl/expose.fidl 中定义
声明向组件所在领域公开的目录,例如在运行时由该组件或其某个子项公开的目录。
序数 | 野战 | 类型 | 说明 |
---|---|---|---|
1 |
source |
Ref
|
(必需)功能相对于组件本身的提供者。必须是 |
2 |
source_name |
name
|
(必需)用于标识将其呈现给此组件的目录的名称。 |
3 |
target |
Ref
|
(必需)公开的目的地:组件的领域或框架。 |
4 |
target_name |
name
|
(必需)公开功能时所用的名称。 |
5 |
rights |
fuchsia.io/Rights
|
(可选)组件可以使用此目录设置的最大权限。如果此政策未设置,“ |
6 |
subdir |
string[1024]
|
(可选)要公开的此目录的子目录,而不是根目录。 |
7 |
availability |
Availability
|
(可选,默认为 添加:11
|
8 |
source_dictionary |
string[1024]
|
(可选) 添加了:HEAD
|
ExposeProtocol
在 fuchsia.component.decl/expose.fidl 中定义
声明向组件所在领域公开的协议,例如该组件或其某一子项在运行时公开的协议。
如需详细了解协议,请参阅:https://fuchsia.dev/fuchsia-src/glossary#protocol
序数 | 野战 | 类型 | 说明 |
---|---|---|---|
1 |
source |
Ref
|
(必需)功能相对于组件本身的提供者。必须是 |
2 |
source_name |
name
|
(必需)标识将其呈现给此组件时所用的协议的名称。 |
3 |
target |
Ref
|
(必需)提供协议的目的地:组件的领域或框架。 |
4 |
target_name |
name
|
(必需)公开功能时所用的名称。 |
5 |
availability |
Availability
|
(可选,默认为 添加:11
|
6 |
source_dictionary |
string[1024]
|
(可选) 添加了:HEAD
|
ExposeResolver
在 fuchsia.component.decl/expose.fidl 中定义
声明已向组件所在领域公开的解析器,例如运行时由组件或其子级之一公开的解析器。
序数 | 野战 | 类型 | 说明 |
---|---|---|---|
1 |
source |
Ref
|
(必需)功能相对于组件本身的提供者。必须为 |
2 |
source_name |
name
|
(必需)呈现给此组件的解析器的名称。 |
3 |
target |
Ref
|
(必需)提供解析器的目的地 |
4 |
target_name |
name
|
(必需)公开功能时所用的名称。 |
6 |
source_dictionary |
string[1024]
|
(可选) 添加了:HEAD
|
ExposeRunner
在 fuchsia.component.decl/expose.fidl 中定义
声明已向组件所在领域公开的运行程序,例如,由该组件或其某个子项在运行时公开的运行程序。
序数 | 野战 | 类型 | 说明 |
---|---|---|---|
1 |
source |
Ref
|
(必需)功能相对于组件本身的提供者。必须为 |
2 |
source_name |
name
|
(必需)呈现给此组件的运行程序的名称。 |
3 |
target |
Ref
|
(必需)运行程序的目的地:组件的领域或框架。 |
4 |
target_name |
name
|
(必需)公开功能时所用的名称。 |
6 |
source_dictionary |
string[1024]
|
(可选) 添加了:HEAD
|
ExposeService
在 fuchsia.component.decl/expose.fidl 中定义
声明向组件所属的领域公开的服务,例如在运行时由该组件或其某个子项公开的服务。
如需详细了解服务,请参阅:https://fuchsia.dev/fuchsia-src/glossary#service
序数 | 野战 | 类型 | 说明 |
---|---|---|---|
1 |
source |
Ref
|
(必需)功能相对于组件本身的提供者。必须是 |
2 |
source_name |
name
|
(必需)用于标识向其呈现该组件的服务的名称。 |
3 |
target |
Ref
|
(必需)提供服务的目的地:组件的领域或框架。 |
4 |
target_name |
name
|
(必需)公开功能时所用的名称。 |
5 |
availability |
Availability
|
(可选,默认为 添加:11
|
6 |
source_dictionary |
string[1024]
|
(可选) 添加了:HEAD
|
OfferConfiguration
在 fuchsia.component.decl/offer.fidl 中定义
声明由组件向其某个子项提供的配置功能,该子项可能由该组件的父级、该组件本身或其某个子项提供。
序数 | 野战 | 类型 | 说明 |
---|---|---|---|
1 |
source |
Ref
|
(必需)功能相对于组件本身的提供者。必须为 |
2 |
source_name |
name
|
(必填)用于标识所提供的配置的名称。 |
3 |
target |
Ref
|
(必需)对目标的引用。必须为 |
4 |
target_name |
name
|
(必需)提供 capability 的名称。 |
5 |
availability |
Availability
|
(可选,默认为 |
OfferDictionary
在 fuchsia.component.decl/offer.fidl 中定义
声明由组件向其某个子项提供的字典,该字典可能由该组件的父领域、该组件本身或其某个子项提供。
如需详细了解字典,请参阅:https://fuchsia.dev/fuchsia-src/glossary#dictionary
序数 | 野战 | 类型 | 说明 |
---|---|---|---|
1 |
source |
Ref
|
(必需)功能相对于组件本身的提供者。必须为 |
2 |
source_name |
name
|
(必填)用于标识所提供的字典的名称。 |
3 |
target |
Ref
|
(必需)对目标的引用。必须是 |
4 |
target_name |
name
|
(必需)提供 capability 的名称。 |
5 |
dependency_type |
DependencyType
|
(必需)此优惠所代表的依赖项类型。收到弱优惠的组件必须支持所提供的功能在任何时候都不可用。 |
6 |
availability |
Availability
|
(可选,默认为 |
7 |
source_dictionary |
dictionary_path
|
(可选) 添加了:HEAD
|
OfferDirectory
在 fuchsia.component.decl/offer.fidl 中定义
声明由某个组件提供的目录,该目录可能由该组件的父级、该组件本身或其某个子项提供。
序数 | 野战 | 类型 | 说明 |
---|---|---|---|
1 |
source |
Ref
|
(必需)功能相对于组件本身的提供者。必须为 |
2 |
source_name |
name
|
(必需)用于标识所提供的目录的名称。 |
3 |
target |
Ref
|
(必需)对目标的引用。必须是 |
4 |
target_name |
name
|
(必需)提供 capability 的名称。 |
5 |
rights |
fuchsia.io/Rights
|
(可选)组件可以使用此目录设置的最大权限。如果未设置此政策,“ |
6 |
subdir |
string[1024]
|
(可选)要提供的此目录的子目录,而不是根目录。可选。 |
7 |
dependency_type |
DependencyType
|
(必需)此优惠所代表的依赖项类型。收到弱优惠的组件必须支持所提供的功能在任何时候都不可用。 |
8 |
availability |
Availability
|
(可选,默认为 |
9 |
source_dictionary |
dictionary_path
|
(可选) 添加了:HEAD
|
OfferEventStream
在 fuchsia.component.decl/offer.fidl 中定义
声明组件提供的事件流。
序数 | 野战 | 类型 | 说明 |
---|---|---|---|
1 |
source |
Ref
|
(必需)功能相对于组件本身的提供者。必须是 |
2 |
source_name |
name
|
(必填)所提供活动的名称。 |
3 |
scope |
vector<Ref>
|
(可选)如果从框架提供事件,该范围就是必需的,并且可用于定义与事件相关的子项(或子项数组)。如果事件是从父级提供,可以使用该范围将事件的作用域缩小到特定的子作用域,否则事件将具有来自父级的作用域。 |
4 |
target |
Ref
|
(必需)提供事件流的目标位置。 |
5 |
target_name |
name
|
(必填)提供事件流时所使用的名称。 |
7 |
availability |
Availability
|
(可选,默认为 |
OfferProtocol
在 fuchsia.component.decl/offer.fidl 中定义
声明由组件向其某个子项提供的协议,该协议可能由该组件的父级、该组件本身或其某个子项提供。
如需详细了解协议,请参阅:https://fuchsia.dev/fuchsia-src/glossary#protocol
序数 | 野战 | 类型 | 说明 |
---|---|---|---|
1 |
source |
Ref
|
(必需)功能相对于组件本身的提供者。必须为 |
2 |
source_name |
name
|
(必填)用于标识所提供的协议的名称。 |
3 |
target |
Ref
|
(必需)对目标的引用。必须是 |
4 |
target_name |
name
|
(必需)提供 capability 的名称。 |
5 |
dependency_type |
DependencyType
|
(必需)此优惠所代表的依赖项类型。收到弱优惠的组件必须支持所提供的功能在任何时候都不可用。 |
6 |
availability |
Availability
|
(可选,默认为 |
7 |
source_dictionary |
dictionary_path
|
(可选) 添加了:HEAD
|
OfferResolver
在 fuchsia.component.decl/offer.fidl 中定义
声明由组件向其某个子项提供的解析器功能,该子项可能由该组件的所属领域、该组件本身或其某个子项提供。
序数 | 野战 | 类型 | 说明 |
---|---|---|---|
1 |
source |
Ref
|
(必需)功能相对于组件本身的提供者。必须为 |
2 |
source_name |
name
|
(必需)提供的解析器的名称。 |
3 |
target |
Ref
|
(必需)对目标的引用。必须是 |
4 |
target_name |
name
|
(必需)提供相应功能时所使用的名称。 |
5 |
source_dictionary |
dictionary_path
|
(可选) 添加了:HEAD
|
OfferRunner
在 fuchsia.component.decl/offer.fidl 中定义
声明由某个组件为其其中一个子项提供的运行程序,该子项可能是由该组件的父级、该组件本身或其某个子项提供的。
序数 | 野战 | 类型 | 说明 |
---|---|---|---|
1 |
source |
Ref
|
(必需)功能相对于组件本身的提供者。必须为 |
2 |
source_name |
name
|
(必需)提供的跑步者的名称。 |
3 |
target |
Ref
|
(必需)对目标的引用。必须是 |
4 |
target_name |
name
|
(必需)提供相应功能时所使用的名称。 |
5 |
source_dictionary |
dictionary_path
|
(可选) 添加了:HEAD
|
OfferService
在 fuchsia.component.decl/offer.fidl 中定义
声明由组件向其某个子项提供的服务,该服务可能由该组件的所属领域、该组件本身或其某个子项提供。
如需详细了解服务,请参阅:https://fuchsia.dev/fuchsia-src/glossary#service
序数 | 野战 | 类型 | 说明 |
---|---|---|---|
1 |
source |
Ref
|
(必需)功能相对于组件本身的提供者。必须为 |
2 |
source_name |
name
|
(必填)用于标识所提供的服务的名称。 |
3 |
target |
Ref
|
(必需)对目标的引用。必须是 |
4 |
target_name |
name
|
(必需)提供相应功能时所使用的名称。 |
5 |
source_instance_filter |
vector<string>
|
(可选)要提供的已列入许可名单的实例的列表。目标组件将无法访问不在此列表中的服务实例。如果未设置,则意味着提供了来源服务中的所有实例。 |
6 |
renamed_instances |
vector<NameMapping>
|
(可选)要提供的已列入许可名单的实例的列表(可重命名)。 如果已设置此字段且非空,则目标服务中的实例集将仅限于此列表中的实例,并将 如果已设置此属性且非空, |
7 |
availability |
Availability
|
(可选,默认为 |
8 |
source_dictionary |
dictionary_path
|
(可选) 添加了:HEAD
|
OfferStorage
在 fuchsia.component.decl/offer.fidl 中定义
声明组件为其其中一个子级提供的存储功能,例如组件的包含领域提供的元存储,或组件本身提供的缓存存储。
序数 | 野战 | 类型 | 说明 |
---|---|---|---|
1 |
source_name |
name
|
(必需)提供的存储功能的名称 |
2 |
source |
Ref
|
(必需)功能相对于组件本身的提供者。必须为 |
3 |
target |
Ref
|
(必需)对目标的引用。必须是 |
4 |
target_name |
name
|
(必填)提供存储功能的名称 |
5 |
availability |
Availability
|
(可选,默认为 |
计划
在 fuchsia.component.decl/program.fidl 中定义
计划声明。
此声明由可执行组件设置,用于指定要使用的运行程序,并向其传递特定于运行程序的程序信息。
如需详细了解运行程序,请参阅:https://fuchsia.dev/fuchsia-src/glossary#runner
序数 | 野战 | 类型 | 说明 |
---|---|---|---|
1 |
runner |
name
|
用于运行组件的运行程序的名称。必须与组件环境中的 |
2 |
info |
fuchsia.data/Dictionary
|
(必需)有关在执行组件时运行的程序的信息。在执行此程序时,组件管理器会向运行程序提供此字典的内容。 例如,该文件可能包含程序的可执行映像或程序参数的路径。
|
协议
在 fuchsia.component.decl/capability.fidl 中定义
声明此组件支持的协议功能。
如需详细了解协议,请参阅:https://fuchsia.dev/fuchsia-src/glossary#protocol
序数 | 野战 | 类型 | 说明 |
---|---|---|---|
1 |
name |
name
|
(必需)此协议的名称。 |
2 |
source_path |
string[1024]
|
(可选)组件的传出目录中的协议路径。 未针对内置功能进行设置。 |
3 |
delivery |
DeliveryType
|
(可选,默认值为 添加了:HEAD
|
解析器
在 fuchsia.component.decl/capability.fidl 中定义
声明负责将组件网址解析为实际组件的解析器。如需了解应实现的协议解析器,请参阅 fuchsia.component.resolution.Resolver
。
序数 | 野战 | 类型 | 说明 |
---|---|---|---|
1 |
name |
name
|
(必需)此解析器的名称。 在同一 |
2 |
source_path |
string[1024]
|
(可选)组件的传出目录中的解析器协议的路径 未针对内置功能进行设置。 |
ResolverRegistration
在 fuchsia.component.decl/environment.fidl 中定义
网址架构到解析器名称的映射。
序数 | 野战 | 类型 | 说明 |
---|---|---|---|
1 |
resolver |
name
|
(必需)解析器的名称。 |
2 |
source |
Ref
|
(必需)功能相对于组件本身的提供者。必须是 |
3 |
scheme |
url_scheme
|
(必需)注册解析器要处理的网址架构。一个解析器只能注册到一个特定的网址架构。网址架构必须以小写 ASCII 字母 (a-z) 开头,可以包含小写 ASCII 字母、数字、 |
跑酷游戏
在 fuchsia.component.decl/capability.fidl 中定义
声明由服务支持的运行程序功能。
序数 | 野战 | 类型 | 说明 |
---|---|---|---|
1 |
name |
name
|
(必需)此运行程序的名称。 在同一 |
2 |
source_path |
string[1024]
|
(可选)组件的传出目录中的运行程序协议的路径。 未针对内置功能进行设置。 |
RunnerRegistration
在 fuchsia.component.decl/environment.fidl 中定义
环境中可用的运行程序的代码库。
序数 | 野战 | 类型 | 说明 |
---|---|---|---|
1 |
source_name |
name
|
(必需)向此组件公开、提供或定义的运行程序 capability 的名称。 |
2 |
source |
Ref
|
(必需)功能相对于组件本身的提供者。必须是 |
3 |
target_name |
name
|
(必需)在此环境中提供运行程序的名称。 |
服务
在 fuchsia.component.decl/capability.fidl 中定义
声明由此组件支持的服务功能。
如需详细了解服务,请参阅:https://fuchsia.dev/fuchsia-src/glossary#service
序数 | 野战 | 类型 | 说明 |
---|---|---|---|
1 |
name |
name
|
(必需)此服务的名称。 |
2 |
source_path |
string[1024]
|
(可选)组件的传出目录中的服务路径。 未针对内置功能进行设置。 |
存储
在 fuchsia.component.decl/capability.fidl 中定义
声明由可提供数据、缓存或元存储的目录支持的存储功能。
序数 | 野战 | 类型 | 说明 |
---|---|---|---|
1 |
name |
name
|
(必需)此存储空间的名称 |
2 |
source |
Ref
|
(必需)后备目录功能相对于组件本身的提供者。必须是 |
3 |
backing_dir |
name
|
(必需)支持存储的 |
4 |
subdir |
string[1024]
|
(可选)源目录的子目录(用于支持存储系统) |
5 |
storage_id |
StorageId
|
(必需)此枚举确定如何键控组件的隔离存储目录。每个选项都对应不同的键策略。 |
UseConfiguration
在 fuchsia.component.decl/use.fidl 中定义
序数 | 野战 | 类型 | 说明 |
---|---|---|---|
1 |
source |
Ref
|
(必需)相对于组件本身的配置提供商。必须为 |
2 |
source_name |
name
|
(必需)标识将其呈现给此组件所用配置的名称。 |
3 |
target_name |
name
|
(必需)组件看到此配置的名称。 它必须与此组件的“config”架构中的键匹配。匹配的配置字段的类型必须与此配置类型匹配。 |
4 |
availability |
Availability
|
(可选,默认为 |
5 |
type |
ConfigType
|
(必需)此配置值的类型。如果 |
UseDirectory
在 fuchsia.component.decl/use.fidl 中定义
声明提供给它的组件使用的目录。
序数 | 野战 | 类型 | 说明 |
---|---|---|---|
1 |
source |
Ref
|
(必需)相对于组件本身的目录提供程序。必须是 |
2 |
source_name |
name
|
(必需)用于标识将其呈现给此组件的目录的名称。 |
3 |
target_path |
string[1024]
|
(必需)在组件的命名空间中应安装该功能的路径。 必须是以 / 开头的绝对路径。 |
4 |
rights |
fuchsia.io/Rights
|
(必需)组件使用此目录所需的权限。 |
5 |
subdir |
string[1024]
|
(可选)要使用的目录的子目录,而不是根目录。 |
6 |
dependency_type |
DependencyType
|
(必需)此用途所代表的依赖项类型。 如果组件通过自身为子级提供功能,并使用同一子级的功能,则必须将依赖项标记为 |
7 |
availability |
Availability
|
(可选,默认为 |
8 |
source_dictionary |
dictionary_path
|
(可选) 添加了:HEAD
|
UseEventStream
在 fuchsia.component.decl/use.fidl 中定义
声明组件使用的 EventStream。
序数 | 野战 | 类型 | 说明 |
---|---|---|---|
1 |
source_name |
name
|
(必需)事件流的名称。 |
2 |
source |
Ref
|
(必需)事件的提供方。必须是 |
3 |
scope |
vector<Ref>
|
(可选)使用框架中的事件时,需要指定范围来指定事件将涉及的子项(或子项数组)。从父项使用事件时,可以使用作用域将事件范围缩小到特定的子作用域,否则事件将带有来自父项的范围。 |
4 |
target_path |
name
|
(必需)在组件的命名空间中应安装该功能的路径。必须是以 / 开头的绝对路径。 |
5 |
availability |
Availability
|
(可选,默认为 |
6 |
filter |
fuchsia.data/Dictionary
|
(可选)事件流过滤条件。过滤器的结构取决于事件流类型。仅适用于 添加次数:9
|
UseProtocol
在 fuchsia.component.decl/use.fidl 中定义
声明提供给组件的组件使用的协议。
协议是由单个 FIDL 协议提供的具有单个实例的服务。
序数 | 野战 | 类型 | 说明 |
---|---|---|---|
1 |
source |
Ref
|
(必需)相对于组件本身的协议的提供者。必须是 |
2 |
source_name |
name
|
(必需)标识将其呈现给此组件时所用的协议的名称。 |
3 |
target_path |
string[1024]
|
(必需)在组件的命名空间中应安装 capability 的路径。 必须是以 / 开头的绝对路径。 |
4 |
dependency_type |
DependencyType
|
(必需)此用途所代表的依赖项类型。 如果组件通过自身为子级提供功能,并使用同一子级的功能,则必须将依赖项标记为 |
5 |
availability |
Availability
|
(可选,默认为 |
6 |
source_dictionary |
dictionary_path
|
(可选) 添加了:HEAD
|
UseRunner
在 fuchsia.component.decl/use.fidl 中定义
声明组件使用的运行程序。
序数 | 野战 | 类型 | 说明 |
---|---|---|---|
1 |
source |
Ref
|
(必需)相对于组件的运行程序的提供程序。必须是 |
2 |
source_name |
name
|
(必需)用于标识将其呈现给此组件的运行程序的名称。 |
3 |
source_dictionary |
dictionary_path
|
(可选) 添加了:HEAD
|
UseService
在 fuchsia.component.decl/use.fidl 中定义
声明已向其提供的组件所使用的服务。
如需详细了解服务,请参阅:https://fuchsia.dev/fuchsia-src/glossary#service
序数 | 野战 | 类型 | 说明 |
---|---|---|---|
1 |
source |
Ref
|
(必需)相对于组件本身的协议的提供者。必须是 |
2 |
source_name |
name
|
(必需)用于标识向其呈现该组件的服务的名称。 |
3 |
target_path |
string[1024]
|
(必需)在组件的命名空间中应安装该功能的路径。 必须是以 / 开头的绝对路径。 |
4 |
dependency_type |
DependencyType
|
(必需)此用途所代表的依赖项类型。 如果组件通过自身为子级提供功能,并使用同一子级的功能,则必须将依赖项标记为 |
5 |
availability |
Availability
|
(可选,默认为 |
6 |
source_dictionary |
dictionary_path
|
(可选) 添加了:HEAD
|
UseStorage
在 fuchsia.component.decl/use.fidl 中定义
声明提供给它的组件使用的存储空间。
序数 | 野战 | 类型 | 说明 |
---|---|---|---|
1 |
source_name |
name
|
(必需)标识将其呈现给此组件的存储的名称。 |
2 |
target_path |
string[1024]
|
(必需)在组件的命名空间中应安装该功能的路径。 必须是以 / 开头的绝对路径。 |
3 |
availability |
Availability
|
(可选,默认为 |
联合
功能灵活
在 fuchsia.component.decl/capability.fidl 中定义
声明由此组件定义的功能。
序数 | 变体 | 类型 | 说明 |
---|---|---|---|
1 |
service |
Service
|
|
2 |
protocol |
Protocol
|
|
3 |
directory |
Directory
|
|
4 |
storage |
Storage
|
|
5 |
runner |
Runner
|
|
6 |
resolver |
Resolver
|
|
8 |
event_stream |
EventStream
|
添加:8 项
|
9 |
dictionary |
Dictionary
|
添加了:HEAD
|
10 |
config |
Configuration
|
添加了:HEAD
|
ConfigChecksum 柔性
在 fuchsia.component.decl/config.fidl 中定义
为配置接口生成的校验和。 如果两个配置接口的校验和相同,则它们是相同的。
序数 | 变体 | 类型 | 说明 |
---|---|---|---|
1 |
sha256 |
uint8[32]
|
通过组件的配置接口生成的 SHA-256 哈希。 |
ConfigSingleValue灵活
在 fuchsia.component.decl/config.fidl 中定义
单个配置值。
序数 | 变体 | 类型 | 说明 |
---|---|---|---|
1 |
bool |
bool
|
|
2 |
uint8 |
uint8
|
|
3 |
uint16 |
uint16
|
|
4 |
uint32 |
uint32
|
|
5 |
uint64 |
uint64
|
|
6 |
int8 |
int8
|
|
7 |
int16 |
int16
|
|
8 |
int32 |
int32
|
|
9 |
int64 |
int64
|
|
10 |
string |
string
|
ConfigValue 灵活
在 fuchsia.component.decl/config.fidl 中定义
可以提供给组件的配置值。
既用于存储静态配置,也用于存储运行时配置 API。
序数 | 变体 | 类型 | 说明 |
---|---|---|---|
1 |
single |
ConfigSingleValue
|
|
2 |
vector |
ConfigVectorValue
|
ConfigValueSource 灵活
在 fuchsia.component.decl/config.fidl 中定义
可用于解析配置值的策略。
序数 | 变体 | 类型 | 说明 |
---|---|---|---|
1 |
package_path |
string
|
(必需)组件软件包中用于查找配置值文件的路径。 |
2 |
capabilities |
ConfigSourceCapabilities
|
如果设置此属性,则所有配置值都可以通过 CML 文件找到。 添加了:HEAD
|
ConfigVectorValue 灵活
在 fuchsia.component.decl/config.fidl 中定义
矢量配置值。
序数 | 变体 | 类型 | 说明 |
---|---|---|---|
1 |
bool_vector |
vector<bool>
|
|
2 |
uint8_vector |
vector<uint8>
|
|
3 |
uint16_vector |
vector<uint16>
|
|
4 |
uint32_vector |
vector<uint32>
|
|
5 |
uint64_vector |
vector<uint64>
|
|
6 |
int8_vector |
vector<int8>
|
|
7 |
int16_vector |
vector<int16>
|
|
8 |
int32_vector |
vector<int32>
|
|
9 |
int64_vector |
vector<int64>
|
|
10 |
string_vector |
vector<string>
|
DebugRegistration 灵活
在 fuchsia.component.decl/environment.fidl 中定义
声明在环境的调试部分中注册的功能。
序数 | 变体 | 类型 | 说明 |
---|---|---|---|
1 |
protocol |
DebugProtocolRegistration
|
公开柔性
在 fuchsia.component.decl/expose.fidl 中定义
声明向组件所在的领域或框架公开的功能。例如,组件在运行时提供的旧版服务。
序数 | 变体 | 类型 | 说明 |
---|---|---|---|
1 |
service |
ExposeService
|
|
2 |
protocol |
ExposeProtocol
|
|
3 |
directory |
ExposeDirectory
|
|
4 |
runner |
ExposeRunner
|
|
5 |
resolver |
ExposeResolver
|
|
7 |
dictionary |
ExposeDictionary
|
添加了:HEAD
|
8 |
config |
ExposeConfiguration
|
添加了:HEAD
|
LayoutConstraint 弹性
在 fuchsia.component.decl/config.fidl 中定义
序数 | 变体 | 类型 | 说明 |
---|---|---|---|
1 |
max_size |
uint32
|
LayoutParameter 柔性
在 fuchsia.component.decl/config.fidl 中定义
序数 | 变体 | 类型 | 说明 |
---|---|---|---|
1 |
nested_type |
ConfigType
|
优惠灵活
在 fuchsia.component.decl/offer.fidl 中定义
声明由组件向其某个子项提供的功能,该子项可能由该组件的所属领域、该组件本身或其某个子项提供。
序数 | 变体 | 类型 | 说明 |
---|---|---|---|
1 |
service |
OfferService
|
|
2 |
protocol |
OfferProtocol
|
|
3 |
directory |
OfferDirectory
|
|
4 |
storage |
OfferStorage
|
|
5 |
runner |
OfferRunner
|
|
6 |
resolver |
OfferResolver
|
|
8 |
event_stream |
OfferEventStream
|
|
9 |
dictionary |
OfferDictionary
|
添加了:HEAD
|
10 |
config |
OfferConfiguration
|
添加了:HEAD
|
参考 flexible
在 fuchsia.component.decl/relative_refs.fidl 中定义
对相对于此组件的功能来源或目标的引用。
序数 | 变体 | 类型 | 说明 |
---|---|---|---|
1 |
parent |
ParentRef
|
|
2 |
self |
SelfRef
|
|
3 |
child |
ChildRef
|
|
4 |
collection |
CollectionRef
|
|
5 |
framework |
FrameworkRef
|
|
6 |
capability |
CapabilityRef
|
|
7 |
debug |
DebugRef
|
|
8 |
void_type |
VoidRef
|
|
9 |
environment |
EnvironmentRef
|
添加了:HEAD
|
10 |
program |
ProgramRef
|
添加了:HEAD
|
使用柔性环境
在 fuchsia.component.decl/use.fidl 中定义
声明已提供给它的组件所使用的功能。
序数 | 变体 | 类型 | 说明 |
---|---|---|---|
1 |
service |
UseService
|
|
2 |
protocol |
UseProtocol
|
|
3 |
directory |
UseDirectory
|
|
4 |
storage |
UseStorage
|
|
7 |
event_stream |
UseEventStream
|
|
8 |
runner |
UseRunner
|
添加了:HEAD
|
9 |
config |
UseConfiguration
|
添加了:HEAD
|
BITS
ConfigMutability 灵活
类型:uint32
在 fuchsia.component.decl/config.fidl 中定义
允许对配置字段的值进行运行时替换的来源。
名称 | 值 | 说明 |
---|---|---|
PARENT |
1 | 允许父组件为配置字段提供替换项。 |
常量
名称 | 值 | 类型 | 说明 |
---|---|---|---|
CONFIG_KEY_MAX_SIZE |
64
|
uint32 |
配置键只能包含以下数量的字节 |
MAX_CHILD_NAME_LENGTH |
1024
|
uint32 |
|
MAX_MONIKER_LENGTH |
4096
|
uint32 |
|
MAX_NAME_LENGTH |
100
|
uint32 |
|
MAX_NUM_EVENT_STREAM_SUBSCRIPTIONS |
100
|
uint64 |
EventStream 中的 EventSubscriptions 数上限。 |
MAX_PATH_LENGTH |
1024
|
uint32 |
|
MAX_URL_SCHEME_LENGTH |
100
|
uint32 |
别名
名称 | 值 | 说明 |
---|---|---|
ConfigKey |
string [CONFIG_KEY_MAX_SIZE ] |
配置字段的字符串标识符。 |
child_name |
string [MAX_CHILD_NAME_LENGTH ] |
|
dictionary_path |
string [MAX_PATH_LENGTH ] |
字典中的路径。该格式与目录路径类似,但不包含 “dirname”(第一个到倒数第二个段,或如果存在一个段则为空)表示一系列嵌套的字典。“basename”(最后一个片段)用于标识最后一个嵌套字典中的功能。 添加了:HEAD
|
名字 |
string [MAX_NAME_LENGTH ] |
|
url_scheme |
string [MAX_URL_SCHEME_LENGTH ] |