# 使用说明

1. 支持 .exe .AppImage 安装包升级安装
2. 支持增量包升级
3. 支持非标包升级
4. 支持硬件库升级
5. 支持第三方插件更新（一些独立的文件或文件夹）

注：第三方插件包上传时必须包含 update.json 文件，1 增量包(默认) 2 第三方插件 3 硬件库 4 非标包

```json
{
  "zipType": "2"
}
```

```js
// 运维中心远程升级
import PluginUpdate from "@keytop/ktpluginupdate";

const pluginUpdate = new PluginUpdate({
  appCode: global.appCode || "CPCSS", // 默认 global.appCode
  serverIp: "", // 默认使用 localConfig.serverIP
  isReboot: false, // 是否自动重启，默认不重启
  log: ktLog.i, // 默认使用 ktLog.i
  onProgress(val) {
    // 下载进度
    console.log(`${val}%`);
  },
});
const data = {
  cmdTime: "1732519887",
  firmwareAppCode: "",
  isFirmware: 0,
  updateFlag: 0,
  updateTime: "1732519887",
  cmd: "updateTerminalAppVersion",
  cmdId: "45614",
  isForceUpdate: 0, // 0 普通升级-弹窗提示 1 强制升级-无提示
  newTerminalAppDescription: "",
  installType: "0", // 3 非标升级 4 硬件子库升级
  newTerminalAppResUrl:
    "http://10.1.6.130:10020/CPCSS/app/programs/KT_CPCSS_1.2.11.zip",
  newTerminalAppVersion: "KT_CPCSS_1.2.11",
};
pluginUpdate
  .update(data)
  .then(() => {
    console.log("升级完成");
  })
  .catch((err) => {
    console.log("升级异常");
  });
```

```js
// 本地增量包更新
import PluginUpdate from "@keytop/ktpluginupdate";
const pluginUpdate = new PluginUpdate({
  appCode: global.appCode || "CPCSS", // 默认 global.appCode
  isReboot: false, // 是否自动重启，默认不重启
  log: ktLog.i, // 默认使用 ktLog.i
});
const zipPath = "E://xxx/KT_CPCSS_1.2.20.zip";
const zipType = "1"; // 1增量包(默认)  2第三方插件 3硬件库 4非标包
pluginUpdate
  .localeUpdate(zipPath, zipType)
  .then(() => {
    console.log("升级完成");
  })
  .catch((err) => {
    console.log("升级异常");
  });
```
