macOS IMLib 导入

本页说明 macOS 端 IMLib 的依赖、制品与集成要求。包名 @ni-paas-im/electron(本地包路径 sdk/electron;当前未发布到 npm)。主进程 @ni-paas-im/electron/main 提供 initService(IMLib 客户端 + 本地 SQLite + 诊断)与 @ni-paas-im/electron/main/ipc 的 registerIpc;preload 由 @ni-paas-im/electron/preload 提供,向页面暴露 window.niPaasIMBridge(imlib.* / localDb.* / onEvent / onState)。

安装 / 依赖​

npm
# SDK 当前未发布到 npm(@0.1.0 远程命令 404),从仓库本地安装:
npm install @ni-paas-im/electron@file:../sdk/electron

# 主进程入口:@ni-paas-im/electron/main(initService)
# IPC 注册:@ni-paas-im/electron/main/ipc(registerIpc)
# preload 桥:@ni-paas-im/electron/preload(window.niPaasIMBridge)
# 类型声明:@ni-paas-im/electron/types/index.d.ts

环境要求​

项要求
运行时macOS 11 Big Sur+(x64 / Apple Silicon arm64),Electron 35(Node.js 22)
进程安全contextIsolation: true、nodeIntegration: false、sandbox: false(ESM preload 需要非沙箱;页面仍无 Node 访问)
本地库主进程 SQLite:dbPath 是目录,库文件为 <dbPath>/im-electron/<appkey>/<userId>.db;renderer 只经 IPC 访问
构建electron-builder 打 .app + .dmg;签名支持 ad-hoc 与 Developer ID + 公证
原生依赖不使用 .node 原生插件,x64 / arm64 免 ABI 重编译

包内容​

制品路径 / 名称说明
IMLib 包 / 模块@ni-paas-im/electron核心通信库(连接、消息、会话、群组、好友、聊天室、上传)
IMLib 源码 / 制品src/main随发行包提供的源码 / 制品(内联调可源码集成)
IMKit 制品src/renderer可选 UI 组件层,只依赖 IMLib 公开接口
类型声明types/index.d.tsTypeScript / JS 类型声明,编辑器可直接跳转
契约声明面types/index.d.ts供零漂移校验的契约声明面

版本与兼容​

  • 契约版本:IDL v1.0.0(frozen,冻结修订 35)。
  • v1.x 采用 additive-only:仅新增可选字段、枚举值、接口与错误码,不破坏既有语义。
  • 升级时先对照「更新日志」确认新增面,再回归连接、消息、会话与群组主链路。
  • 当前平台绑定状态:ga。

下一步​