mirror of
https://gitcode.com/JianFeeeee/HomeAgent.git
synced 2026-09-22 01:48:11 +00:00
- 公共 SDK(third_party/homeagent-sdk):RegisterOnRemoveHandler/RunOnRemoveHandlers (后注册先执行、幂等);内部 SDK PluginManager 接口新增 RemovePlugin - registry.RemovePlugin:runStopHandlers → Stop → 清理 plugins/sdkRefs/instances → runOnRemoveHandlers → toolCleaner.UnregisterPluginTools → cfgReg.RemoveDisabledPlugin - pluginmgr.removePlugin 先调 Registry.RemovePlugin 再删目录 - 配置清理:PluginSettings.Remove(key)(内部 SettingsAPI + settingsImpl) - 演示:timer 插件 onRemove 删 max_duration 键;plugindev 模板同步 onRemove 示例; SDK example/calendar cleanupData 删 events.json;manager plugins/uninstall 先停通道
17 lines
546 B
Go
17 lines
546 B
Go
package sdk
|
|
|
|
import pubsdk "gitcode.com/JianFeeeee/homeagent-sdk/sdk"
|
|
|
|
// SettingsAPI 是内置插件使用的全量配置接口。
|
|
type SettingsAPI interface {
|
|
pubsdk.SettingsAPI
|
|
// DefsCore 返回核心配置表中匹配前缀的配置定义。
|
|
DefsCore(prefix string) []*ConfigDef
|
|
// DefsPlugin 返回另一个插件的配置定义。
|
|
DefsPlugin(plugin, prefix string) []*ConfigDef
|
|
// Remove 删除本插件配置中的单个键(插件删除时清理自身配置用)。
|
|
Remove(key string) error
|
|
}
|
|
|
|
type ConfigDef = pubsdk.ConfigDef
|