MIP DESKTOP · 扩展开发
调试、打包与发布
检查包结构、兼容范围与发布前的实际安装行为。
构建成功只是交付的一步。最终应验证包结构、宿主兼容、实际安装和启停后的行为。
构建自包含资源
Host 使用目标宿主支持的 CommonJS 入口;WebView 使用构建后的 HTML、CSS 和脚本。SDK 与运行依赖由扩展自己的构建工具打包。
包内只保留运行时需要的文件。开发源码、完整 node_modules、编辑器配置、测试快照和开发机目录不进入交付包。
mip.example.notes-1.0.0.mipx
manifest.json
dist/extension.js 有 Host 时才需要
webviews/home/index.html
webviews/home/main.js
webviews/home/style.css
扩展运行时不执行 npm 安装,不依赖远程开发服务器,也不动态下载任意执行脚本。
检查安装包
.mipx 是 ZIP 容器。打开压缩包检查,根目录应直接包含 manifest.json,文件名和实际包内内容一致。
正式包建议命名为 <extension-id>-<version>.mipx。最终身份与版本以包内 Manifest 为准,重命名文件不会改变它们。
完整性与签名信息使用匹配的正式发布工具生成。开发环境能安装不代表正式发行版允许相同的未签名包;具体信任和签名要求由发行方确认,不使用伪签名填充字段。
调试顺序
- 检查安装器错误:清单格式、版本范围、入口存在性、包路径或签名。
- 检查扩展状态:已安装、已启用,Host 是否正确激活。
- 检查页面:View ID、入口映射、资源相对路径和控制台错误。
- 检查调用:权限、能力、命令声明、后台声明及实际返回。
日志使用扩展自己的标识,不记录凭据、完整身份对象或敏感业务载荷。错误提示包含下一步处理方式,避免无说明地重试。
发布前验证
| 项目 | 需要确认的结果 |
|---|---|
| 干净环境安装 | 不依赖开发机源码、目录和未交付依赖 |
| 启用与停用 | 入口同步变化,监听、连接和定时器得到清理 |
| 页面与命令 | 声明、命名空间和实际处理保持一致 |
| 身份切换 | 用户、单位变化后重新获取适当上下文 |
| 权限缺失 | 显示明确反馈,不回退读取宿主内部对象 |
| 主题与窄窗口 | 内容可读,操作可完成 |
| 版本更新 | 实际升级路径和必要的数据迁移已验证 |
记录测试过的 Desktop、Extension API 和 SDK 版本。源码中存在某个能力,不代表所有同名历史安装包都已包含它。
更新与分发
新版本使用新版本号和独立制品,不覆盖已交付的同版本文件。变更存储或命令契约时提供迁移说明;旧包可获取不等于可以安全直接降级。
扩展通过发布方确认的渠道分发;需要登录或授权的资源由正式扩展服务处理。下载门户负责公开文档与资源入口,不执行安装、更新或扩展管理。
基础契约:Extension API 1.x;具体能力以目标 Desktop 发行版为准。