Native (C ABI) IMLib 导入

本页说明 Native (C ABI) 端 IMLib 的依赖、制品与集成要求。正式 ABI 为 im_client_*;头文件同时保留 deprecated 的 imsdk_* 旧 MVP ABI,新代码不应使用。C ABI 未暴露全部 62 个语义 op,见「功能列表」中的「C ABI 未暴露」标记。

安装 / 依赖​

C / Rust
// 1) 链接预编译库(include/im_sdk.h + libim_sdk)
cc app.c -Iinclude -Llib -lim_sdk -o app

// 2) 或在 Rust 工程中直接依赖 crate
cargo add im-sdk im-kit

环境要求​

项要求
ABIC99(C++ 需 extern "C");头文件 include/im_sdk.h、include/im_kit.h
线程模型句柄非线程安全;同一句柄同一时刻只允许一个线程访问
事件回调im_client_set_event_callback 在库后台线程投递,回调内勿长时间阻塞
内存所有权char** 输出必须 im_string_free;句柄用 im_client_free 释放
平台Windows / Linux / macOS(Rust 目标平台)

包内容​

制品路径 / 名称说明
IMLib 包 / 模块im-sdk (crate) + libim_sdk核心通信库(连接、消息、会话、群组、好友、聊天室、上传)
IMLib 源码 / 制品im-sdk随发行包提供的源码 / 制品(内联调可源码集成)
IMKit 制品im-kit + include/im_kit.h可选 UI 组件层,只依赖 IMLib 公开接口

版本与兼容​

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

下一步​