Explorar o código

docs: update README with correct index.json schema and multi-version format

wangshuo hai 1 semana
pai
achega
d1ddde7a5f
Modificáronse 1 ficheiros con 34 adicións e 9 borrados
  1. 34 9
      README.md

+ 34 - 9
README.md

@@ -24,8 +24,6 @@ index.json                                    # 包索引(平台只认这个
 packages\<host>\<id>\<id>-<version>.zip       # 扩展包
 ```
 
-每个 zip 的根目录必须包含 `manifest.json`,包内 `manifest.id` 与索引里的 `id` 一致。
-
 `host` 是扩展挂载位置:
 
 | host | 说明 |
@@ -65,35 +63,62 @@ packages\<host>\<id>\<id>-<version>.zip       # 扩展包
 manifest.json
 Ext.XXX.dll
 Localization\zh-CN.json
-...(其他随包文件)
 ```
 
 ### 3. 放到仓库
 
 路径规则:`packages\<host>\<id>\<id>-<version>.zip`
 
-例如:`packages\platform\Ext.AiAssistant\Ext.AiAssistant-1.0.0.zip`
+例如:`packages/platform/Ext.AiAssistant/Ext.AiAssistant-1.0.0.zip`
 
 ### 4. 更新 index.json
 
-在 `index.json` 的 `packages` 数组里加一条:
+在 `index.json` 的 `packages` 数组里加一条,字段顺序如下(与平台 `GalleryPackage` 类对齐):
 
 ```json
 {
   "id": "Ext.YourExt",
   "name": "扩展显示名",
   "version": "1.0.0",
-  "publisher": "你的名字",
+  "publisher": "TeamAAS",
+  "kind": "extension",
+  "host": "platform",
   "description": "一句话说明扩展做什么",
+  "notes": "• 功能点一\n• 功能点二",
   "downloadUrl": "packages/platform/Ext.YourExt/Ext.YourExt-1.0.0.zip",
   "sha256": "zip 文件的 sha256",
   "size": 123456,
-  "notes": "• 功能点一\n• 功能点二",
-  "references": ["TeamPLT.SDK", "TeamPLT.Contracts"]
+  "references": [ "TeamPLT.SDK", "TeamPLT.Contracts" ],
+  "targetFramework": "net48",
+  "requiresHost": "TeamPLT>=1.0.0",
+  "arch": [ "x64" ],
+  "dependencies": [],
+  "versions": [
+    {
+      "version": "1.0.0",
+      "downloadUrl": "packages/platform/Ext.YourExt/Ext.YourExt-1.0.0.zip",
+      "sha256": "zip 文件的 sha256",
+      "size": 123456,
+      "releasedAt": "2026-09-24",
+      "status": "stable",
+      "notes": "首个版本"
+    }
+  ]
 }
 ```
 
-`sha256` 和 `size` 必须和 zip 文件实际值一致,否则平台校验会拒绝安装。
+字段说明:
+
+| 字段 | 说明 |
+|------|------|
+| `kind` | `extension` 或 `contract` |
+| `host` | 挂载位置(platform/vision/cameras/communication/base) |
+| `downloadUrl` / `sha256` / `size` | 最新版的下载信息,平台下载后强校验 |
+| `requiresHost` | 字符串格式 `平台ID>=版本`,如 `TeamPLT>=1.0.0` |
+| `versions` | 所有历史版本,每条含独立的 downloadUrl/sha256/size/status |
+| `status` | `stable` / `beta` / `deprecated` |
+
+发新版本时:更新顶层 `version`/`downloadUrl`/`sha256`/`size` 到最新版,同时在 `versions` 数组里追加一条。
 
 ### 5. 提交推送