@hiizap/desktop-sdk

中文文档
1.3.0发布于 2026/11/01UNLICENSEDTypeScriptCommonJS

Hiizap许可和验证更新下载为Node.js和Electron主进程

中文使用文档
文档目录11 节
  1. 安装<s:1> <s:1> <s:1> <s:1>或其他
  2. Contrato
  3. 雷德,快来确认一下
  4. Desenvolvimento
  5. 标识符tsamicnico do productcontrato v1
  6. Diagnóstico de atualiza<s:1> o independente - contrto v1
  7. autoriza
  8. Versões - hiizap.semver.v1
  9. compatible de atualiza<s:1> -模式1
  10. 谈判a - <s:1> <s:1> o - de - fiana em1.2
  11. 记录desde1.3

Hiizap桌面SDK 1.3.0

SDK proprietário para Node.js >=22 e processso principal do Electron com esse runtime。验证license <s:1> as na API HTTPS Hiizap、verifica certificados Ed25519、mantamacm toleracncia offline assinada e baixa atualizações com tamanho、SHA-256 e manifesto Ed25519 verificados。n<e:1>执行nem安装binários。

安装<s:1> <s:1> <s:1> <s:1>或其他

Instale com npm install --save-exact @hiizap/[email protected]。Documentacao: https://doc.hiizap.com。莱亚 KEYRING-MIGRATION.md Para o contrto de assinatura, examples, errors和transaparte de assinantes。包包括JavaScript CommonJS, declarações TypeScript等 公开场合 做servidor;重要的是 require quanto com import.

import { HiizapDesktopSDK, HiizapSDKError } from '@hiizap/desktop-sdk';
import path from 'node:path';

// No Electron: use app.getPath('userData') em uma pasta exclusiva deste aplicativo.
const sdk = new HiizapDesktopSDK({
  productSlug: 'meu-produto',
  currentVersion: '1.0.0',
  platform: 'windows-x64',
  cacheFilePath: path.join(diretorioPrivadoDoAplicativo, 'hiizap', 'license.cache'),
});

try {
  const { source, certificate } = await sdk.validateLicense(chaveInformadaPeloComprador);
  if (!certificate.valid) {
    bloquearRecursosLicenciados(certificate.error);
  } else {
    habilitarRecursosLicenciados({ offline: source === 'offline' });
    if (source === 'online' && certificate.update_available) {
      mostrarTextoDaAtualizacao(certificate.changelog_html ?? '');
      // Após consentimento no aplicativo, escolha um caminho novo absoluto.
      const arquivo = await sdk.downloadUpdate(certificate, caminhoNovoDoInstalador);
      // Aplicativo decide instalação, assinatura nativa e elevação quando necessárias.
    }
  }
} catch (error) {
  bloquearRecursosLicenciados(error instanceof HiizapSDKError ? error.code : 'SDK_ERROR');
}

作为funções接口,没有应用集成的范例。大多数更改日志都是文本;* * * * * * * * * * * * * * * * * * *不需要获取许可证、证书和url来下载日志/遥测数据。保护许可证,但不保护系统;对高速公路高速公路的高速公路进行了精确的分析。ququer excer<e:1>用于开发块访问。有效期:1)有效期:1)有效期:1)有效期:2)有效期:Uma chamada n<e:1> o protege Uma sess<e:1> o indefinite。

Contrato

  • validateLicense(key): Promise<ValidationResult> 下放 { source, certificate }. certificate.valid === false 我的消极的阿辛纳达。论述lancam HiizapSDKError Com código sem credcredais。
  • downloadUpdate(certificate, absoluteDestination): Promise<string> Aceita附录o último certificado online retornado portesesta instanca。Baixa em流媒体 .partial, conf manifesto/ platform /tamanho/hash e publica por硬链接atômico sem sobrescrever。O diretório deve存在,用户私有,允许硬链接,没有文件系统。FAT,比较您的políticas que proíbem链接podem falhar.com DOWNLOAD_FAILED。Uma falha exige nova valida<s:1> o para out URL de uso único。
  • verifyUpdateBinary(absolutePath, certificate): Promise<boolean> Verifica um arquivo contra manifesto assinado似乎不太关注arquivo na memória。Comprova集成/自动发布,不验证实际数据许可<e:1>。
  • getHardwareId(): string expõe某些SHA-256做的标识,请查看英勇的原件。

O构造器位置 (slug, version, platform, cachePath) 连续disponivel。O rereno de valida<s:1> O agora involved certificate; verifyUpdateBinary Agora <e:1> assíncrono我们收到了一份完整的证书。2、胸膜前切面术1、胸膜前切面术。缓存和HWIDs前n<s:1> o s<s:1> o migrados: exige primeira valida<s:1> <s:1> o online após atualiza<s:1> <s:1> o desse esboo。

雷德,快来确认一下

API padrao: https://api.hiizap.com/v1/client。TLS永久验证节点;重定向;User-Agent explícito evita a incompatibilidade observada com客户端genacrios na Cloudflare。JSON限制一个64kib,验证<s:1> <s:1> <s:1> 15秒,下载5分钟e tamanho máximo 1gib。 requestTimeoutMs, downloadTimeoutMs e maxDownloadBytes 允许限制阳性explícitos。Sem retry automático ou fallback em HTTP,包括429/5xx。

有些错误transitórias reconhecidas de conex<e:1> o/DNS/timeout permit缓存。产品生产证书、数据许可证、处置证;Prazo离线assinado nunca(延期)。消炎药替代autorizações消炎药。脱机移除baixar电容。AES-256-GCM usa IV aleatório我们有衍生数据许可,256位,产品配置。Escrita atômica, fsync e modo0600;pasta nova0700 em Unix。 使用uma única instcia /processo por caminho;Concorrência entre processsos exige coordinate a - <s:1> o pelo integrator。

Windows咨询machineguid.com reg.exe sem shell e prazo de5s;Linux usa machine-id;macOS usa IOPlatformUUID通过ioreg sem管道外壳。1 .重新安装a / s / s / s / s / s / s / s / s / s / s / s / s / s / s / s / s / s / s / s / s / s / s。网址:indisponíveis, falha com HARDWARE_ID_UNAVAILABLE, sem inventar ID volátil。 hardwareIdProvider 允许适配器confiável renando64个字符十六进制minúsculos。不允许查询conteúdo remoto escolha ID/opções。

apiUrl, publicKeyPem, fetch e now 服务para out部署/adaptadores confiáveis/testes。apiUrl exige HTTPS协议Nova have pública exige distribui<s:1> <s:1> <e:1> o confiável de Nova vers<e:1> o;a API n<e:1> (0) pod(1)以前有一个para aceitar sua (própria assinatura)。

Desenvolvimento

npm ci --ignore-scripts
npm test
npm audit
npm pack

Windows和Linux都测试本机的内存条。macOS要求执行<s:1> em硬件macOS。n<e:1> / / / / / / / / / / / / / / / / / / / / / / /一个集成的<s:1>系统安装程序<e:1>可以显示应用程序测试próprios。Consulte安全。md e https://doc.hiizap.com/guias/testes/ Para limits e critrios de validationo。

标识符tsamicnico do productcontrato v1

productSlug/product_slug <e:1> uma string ASCII字符1 ~ 80个字符:字母a - z, números e段分隔符或空格único hífen。示例válidos: a、0、01、meu- product。* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *。n<e:1> o htrim,转换<e:1> o de número参数字符串,别名ou troca automática de identidade。复制一个标识为必要的pelo responsável pelo产品;你做什么广告?你做什么广告?

version1.0.1提供了一个divergência . com API。Identidades válidas existentes mantêm vínculos, opções/cache e assinatura。配置参数:INVALID_OPTIONS不支持桌面,HIIZAP_INVALID_CONFIG不支持PHP。请注意,如果您有数据许可<s:1>,则有数据许可pública,否则您将无法生产潜在的试探性错误。

在WordPress中,产品类型包含一个mesma类v1开发协调器和一个实现协调器:一个初始的cópia协调器和一个实现协调器。misurar 1.0.0 e 1.0.1 pode manter a regra antiga naquela requisisp;从缓存的命名空间中移除类的保护。

Diagnóstico de atualiza<s:1> o independente - contrto v1

一个API接口报告器在certificado assinado com valid=true, update_available=false . update_error可以进行查询,链接到os metadados de atualiza<s:1> o n<e:1> o estiverem disponíveis。Os códigos s<e:1> o UPDATE_METADATA_TOO_LARGE, UPDATE_METADATA_INVALID, UPDATE_LOOKUP_FAILED e UPDATE_LINK_UNAVAILABLE。Esse campo <e:1> diagnóstico;a autoriza<s:1>持续依赖于当前的有效组件,如verificações do SDK。Sem atualiza<s:1> <s:1> o disponível n<e:1> o h<e:1> URL autorizada para baixar。

O信封HTTP连续限制为65.536字节。Nao aumente o teto对位contornar地以貌取人extensas e Nao decodifique o载荷对位autorizar sem assinatura。0后端验证或<s:1>修改数据公共<s:1> <s:1> <s:1>; 0后端验证或<s:1>修改数据公共<s:1>;Falha da validatal<s:1>或da licenlicence <s:1>或de assinatura continua bloqueante。Esta corre(F03)。

autoriza

一份文献资料验证文件,包括信封原件、复印件、已确认的有效数据许可文件。存款衍生品和存款更新。Um manifesto incompatível repna license <e:1> válida, update_available=false e update_error, sem URL ou campos de installa<e:1> <e:1> o。Diagnósticos locais s<e:1> o decisões da biblioteca sobre o envelope verificado, n<e:1> o novos campos assinados pelo servidor。 O缓存持续保管人对信封的原始邮件重复发送,如verificações;当你重新利用一个对象时,衍生出一个对象criptográfica。

Falha de assinatura do envelope, vínculo incorreto, revoga。附件错误数据虚拟化,存储数据许可,验证数据,安装数据自动化。没有下载n<e:1>或自动安装,包不完整;保留现有数据与<s:1>实际信息错误;

UPDATE_SIZE_LIMIT, UPDATE_PLATFORM_UNSUPPORTED, UPDATE_VERSION_INELIGIBLE, UPDATE_REQUIREMENTS_UNSUPPORTED和UPDATE_MANIFEST_REJECTED区分一个原因。Requisitos legados min_runtime_version n<e:1>不支持任何对构造的支持。Essa保留了<s:1> o <e:1> exclusiva do campo legado;o contrto estructurado usa schema 1 e manifesto V2。非人类的mudanadarada de identideade, cache, licensing。

Versões - hiizap.semver.v1

使用veraliz..org真实安装,canônica e sem normaliz.a.<s:1> o: MAJOR.MINOR。PATCH, pr<s:1> - lan- amento - build opcionis。0协议限制文本为30个字符的ASCII码:ada número do core a 9007199254740991。Identificadores numericos de pre-lancamento圣comparados digitos, sem conversao对位浮动;不,不,不,不,不,不。构建节点节点0初始值(例如:n<e:1>)。

1.0.0-alpha。1 <s:2> válido;1.0.0-01, v1.0.0, espapartos, intervalos和identificadores vazios s<e:1> o inválidos。不移除/构建/前缀你的troque与沉默的沉默:一个assinatura做宣言的文字流和字符串exata publicada。Uma vers<s:1> o inválida na configura<s:1> o o <e:1> recusada;Uma veritas <e:1> o inválida de update n<e:1> o autorizizinstallationa<s:1> o e preserva Uma license <e:1> que tenha passado na valida<s:1> <e:1> o independente。由于cópias embutidas PHP精确的服务器坐标:一个初始类v1 carregada mantsamm和一个实现的apache apache。

compatible de atualiza<s:1> -模式1

一个biblioteca声明compatibility_version=1,一个informa ambiente estructurado:运行时,一个arch。一个字符串rununtime_version continua diagnóstico, n<e:1> o regra。节点/电子vêm do processso confiável;PHP/WordPress vêm das api native。WordPress estável X.Y病毒X.Y.0附录和信息<s:1>运行时;Isso n (o归一化)和(o)乘积。环境不受约束:不受约束;不受约束;不受约束。

释放限制usam RELEASE_V2 e SHA-256的uma tuplcanônica de requiistos;一个assinatura liga product, verso, platform, hash/tamanho do arquivo digest de required。拆卸工具需要您的mudar和política,以防止安装过程中出现异常情况。O SDK提供política本地化版本,无需下载。一个许可<s:1>有效性和独立性,永久的bloqueante se inválida。

最近发布了一个API escola (estável compatível),可能会导致一个新的API的出现。客户对附件的要求似乎是对结构的要求;Requisitos legados min_runtime_version continuam retidos sem interpreta ?下载compados têm autoridade商业版própria: esta política desve OTA pelo SDK, n<e:1> o compadas qualquer ambiente onde和compados安装手册。

1 .环境信息系统<s:1> <s:1>数据<s:1> <s:1> <s:1> <s:1> <s:1> <s:1> <s:1> <s:1> <s:1>硬件<s:1> <s:1> <s:1> <e:1>。管理员您的进程折衷节点与客户端不同。O适配器环境提供程序做桌面<e:1>独家做主机confiável/testes;Nunca o alimente com parmetros de renderer, navigador ou usuário。SO/arquiteturas表示没有合同,没有重要的执行<e:1>,没有真正的有效性,没有真正的价值。请求声明:不需要替换testes do binário e do installer。

谈判a - <s:1> <s:1> o - de - fiana em1.2

作为调解人,声明为raízes地点的一方;0 .服务保存0 . assinante compatível para versões前。Consulte KEYRING-MIGRATION。Md antes de remover conanada, trocar / percar / percar / percar / percar / concar / concar / concar / concar / concar / concar / concar / concar / concarNenhuma有privada <s:1> distribuída pelo SDK。

记录desde1.3

Códigos teriores preservados;分类,状态HTTP请求ID sanititizado disponíveis无错误。莱亚 DIAGNOSTICS.md 这是意大利面的例子。Sem retry novo ou mudana na política de autoriza<e:1> o。

版本与发布记录

@hiizap/desktop-sdk 共发布 6 个版本,首次发布于 2026/10/26;过去 12 个月发布了 6 个版本。

版本发布日期距今
1.3.0latest2026/11/012 天前
1.2.02026/10/295 天前
1.1.02026/10/295 天前
1.0.52026/10/286 天前
1.0.02026/10/268 天前
0.0.0-stage2026/10/268 天前

关于 @hiizap/desktop-sdk 的常见问题

@hiizap/desktop-sdk 是什么?

Hiizap许可和验证更新下载为Node.js和Electron主进程

如何安装 @hiizap/desktop-sdk?

在项目目录运行 npm install @hiizap/desktop-sdk,或使用 pnpm add / yarn add / bun add。

@hiizap/desktop-sdk 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@hiizap/desktop-sdk 支持 ESM 还是 CommonJS?

以 CommonJS 形式发布,可以直接 require();在 ES Module 项目中也可以用 import 引入(Node.js 会把 module.exports 作为默认导出)。

@hiizap/desktop-sdk 需要什么版本的 Node.js?

package.json 的 engines 字段要求 Node.js >=22。版本不符时 npm 默认只给出警告,开启 engine-strict 后会拒绝安装。

@hiizap/desktop-sdk 可以商用吗?

@hiizap/desktop-sdk 使用 UNLICENSED 许可。作者声明为 UNLICENSED,即不授予公开使用许可(与公共领域的 Unlicense 不同)。使用前需获得作者授权。以上为概括,不构成法律意见,请以许可原文为准。

@hiizap/desktop-sdk 还在维护吗?

最新版本 1.3.0 发布于 2026/11/01(2 天前);至今共发布 6 个版本,其中过去 12 个月发布了 6 个;首次发布于 2026/10/26。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。