插件系统
插件系统TEN 框架是一个软件模块系统,其中每个软件模块都由 插件 (addon) 的概念定义。本质上,TEN 框架中的每个软件模块都是一个插件。例如,用户可以定义以下类型的 TEN 框架插件:
TEN 扩展 (extension) 插件
TEN 扩展组 (extension group) 插件
TEN 协议 (protocol) 插件
加载插件所需的信息要将插件加载到 TEN 运行平台,需要三个信息:
插件名称
插件名称在整个 TEN 应用中必须全局唯一。将多个同名插件加载到 TEN 运行平台是未定义行为,可能会导致第二个插件实例无法正确加载。
插件文件夹位置
在 TEN 框架中,加载插件时,用户必须告知 TEN 运行平台插件目录的所在位置。此目录将作为插件的
base_dir
。TEN 运行平台将使用此基本目录加载与插件相关的其他文件,例如插件的manifest.json
和property.json
文件。基本上,在设计 TEN 框架的插件注册 API 时,其目标是自动检测插件所在的目录,因此用户无需显式指定
base_dir
。但是,在某些 TEN 框架无法自动检测base_dir
的特殊情况下,用户将需要为 TEN 运行平台显式指定插件所在的文件夹。插件实例本身
将插件注册到 TEN 运行平台有两种方法可以将插件注册到 TEN 运行平台:
显式调用 API 以将插件的
base_dir
注册到 TEN 运行平台。注意: 目前,只有独立测试框架提供此类 API。
将插件放置在 TEN 应用文件夹树中的指定位置。
通过将插件放置在指定位置,TEN 应用将在启动时自动加载这些插件。目前,此指定位置位于 TEN 应用的
ten_packages/
目录下。如果插件以此格式放置,它们将在 TEN 应用启动时自动加载。
Last updated
Was this helpful?