# 插件生命周期挂钩 Aura SL5 支持生命周期挂钩,允许插件(地图)在状态更改时自动执行特定逻辑。 ## `on_reload()` 钩子 `on_reload()` 函数是一个特殊的可选函数,您可以在任何插件映射 (`.py`) 中定义它。 ### 行为 * **触发:**该函数在模块成功热重载(检测到文件更改+语音触发)后**立即执行。 * **上下文:** 它在主应用程序流程中运行。 * **范围:** 在系统初始启动(冷启动)期间**不**执行。它严格适用于*重新*加载场景。 ### 用例 * **安全性:** 编辑后自动重新加密或重新压缩敏感文件。 * **状态管理:** 重置全局计数器或清除特定缓存。 * **通知:** 记录特定的调试信息以验证更改是否已应用。 ### 技术细节和安全 * **错误处理:** 执行被包装在 `try/ except` 块中。如果你的`on_reload`函数崩溃了(例如,`DivisionByZero`),它会记录一个错误(`❌执行on_reload时出错...`),但**不会使Aura崩溃**。 * **性能:** 函数同步运行。避免直接在此功能中执行长时间运行的任务(如大型下载),因为它们会短暂阻止语音命令处理。对于繁重的任务,生成一个线程。 ### 示例代码 __代码_块_0__