主题
原生平台 API 名称映射
本页用于跨端产品、测试和 SDK 二次封装。参数语义与返回模型见对应分类文档。 iOS 与 macOS 虽然复用 Swift 实现,但作为两个独立平台列出;安装、权限、生命周期 和制品验收分别查阅各自 QuickStart。
1. 生命周期与事件
| 统一能力 | iOS | macOS | Android | Windows | HarmonyOS |
|---|---|---|---|---|---|
| 一键连接 | XHIMClient.connect | XHIMClient.connect | XHIMClient.connect | XHIMClient.ConnectAsync | XHIMClient.connect |
| 手动创建 | XHIMClient(configuration:) | XHIMClient(configuration:) | XHIMClient(configuration) | new XHIMClient(configuration) | new XHIMClient(configuration) |
| 启动 | start | start | start | StartAsync | start |
| 登录 | login | login | login | LoginAsync | login |
| 续凭 | updateCredential | updateCredential | updateCredential | UpdateCredentialAsync | updateCredential |
| 退出 | logout | logout | logout | LogoutAsync | logout |
| 状态 | state | state | state | State | state |
| 网络恢复 | notifyNetworkAvailable | notifyNetworkAvailable | notifyNetworkAvailable | NotifyNetworkAvailable | notifyNetworkAvailable |
| 诊断 | diagnostics | diagnostics | diagnostics | GetDiagnostics | diagnostics |
| 设备策略 | deviceSessionPolicySnapshot | deviceSessionPolicySnapshot | deviceSessionPolicySnapshot | DeviceSessionPolicySnapshot | deviceSessionPolicySnapshot |
| 兼容性 | compatibilitySnapshot | compatibilitySnapshot | compatibilitySnapshot | CompatibilitySnapshot | compatibilitySnapshot |
| 关闭 | shutdown | shutdown | shutdown | ShutdownAsync / DisposeAsync | shutdown / destroy |
| 事件 | events | events | events | Events() | onEvent |
| 投影事件 | projectionEvents | projectionEvents | 从 events 筛选 | ProjectionEvents() | 从 onEvent 筛选 |
2. 消息
| 统一能力 | iOS | macOS | Android | Windows | HarmonyOS |
|---|---|---|---|---|---|
| 文字 | sendText | sendText | sendText | SendTextAsync | sendText |
| 标准/自定义 | sendMessage | sendMessage | sendMessage | SendMessageAsync | sendMessage |
| 编辑 | editText | editText | editText | EditTextAsync | editText |
| 撤回 | recall | recall | recall | RecallAsync | recall |
| 重试 | retryMessage | retryMessage | retryMessage | RetryMessageAsync | retryMessage |
| 取消待发消息 | cancelMessage | cancelMessage | cancelMessage | CancelMessageAsync | cancelMessage |
| 单条查询 | message | message | message | GetMessageAsync | message |
| 本地消息分页 | messages | messages | messages | ListMessagesAsync | messages |
| 服务端历史 | getMessageHistory | getMessageHistory | getMessageHistory | GetMessageHistoryAsync | getMessageHistory |
| 搜索 | searchMessages | searchMessages | searchMessages | SearchMessagesAsync | searchMessages |
| 仅自己删除 | deleteMessageForSelf | deleteMessageForSelf | deleteMessageForSelf | DeleteMessageForSelfAsync | deleteMessageForSelf |
3. 会话与已读
| 统一能力 | iOS | macOS | Android | Windows | HarmonyOS |
|---|---|---|---|---|---|
| 会话分页 | conversations | conversations | conversations | ListConversationsAsync | conversations |
| 单聊会话 | directConversation | directConversation | directConversation | GetOrCreateDirectConversationAsync | directConversation |
| 清空 | clearConversation | clearConversation | clearConversation | ClearConversationAsync | clearConversation |
| 隐藏 | hideConversation | hideConversation | hideConversation | HideConversationAsync | hideConversation |
| 单会话已读 | markConversationRead | markConversationRead | markConversationRead | MarkConversationReadAsync | markConversationRead |
| 全部已读 | markAllConversationsRead | markAllConversationsRead | markAllConversationsRead | MarkAllConversationsReadAsync | markAllConversationsRead |
| 总未读 | totalUnreadCount | totalUnreadCount | totalUnreadCount | GetTotalUnreadCountAsync | totalUnreadCount |
| 成员已读 | conversationPeerReads | conversationPeerReads | conversationPeerReads | ListConversationPeerReadsAsync | conversationPeerReads |
| 置顶/免打扰 | setConversationPreference | setConversationPreference | setConversationPreference | SetConversationPreferenceAsync | setConversationPreference |
| 保存草稿 | setLocalDraft | setLocalDraft | setLocalDraft | SetLocalDraftAsync | setLocalDraft |
| 读取草稿 | localDraft | localDraft | localDraft | GetLocalDraftAsync | localDraft |
| 清除草稿 | clearLocalDraft | clearLocalDraft | clearLocalDraft | ClearLocalDraftAsync | clearLocalDraft |
4. 用户、Push 和设备
| 统一能力 | iOS | macOS | Android | Windows | HarmonyOS |
|---|---|---|---|---|---|
| 当前资料 | currentUserProfile | currentUserProfile | currentUserProfile | GetCurrentUserProfileAsync | currentUserProfile |
| 批量资料 | userProfiles | userProfiles | userProfiles | GetUserProfilesAsync | userProfiles |
| 更新资料 | updateCurrentUserProfile | updateCurrentUserProfile | updateCurrentUserProfile | UpdateCurrentUserProfileAsync | updateCurrentUserProfile |
| Presence | publishPresence | publishPresence | publishPresence | PublishPresenceAsync | publishPresence |
| Typing | publishTyping | publishTyping | publishTyping | PublishTypingAsync | publishTyping |
| 注册 Push | registerPushDevice | registerPushDevice | registerPushDevice | RegisterPushDeviceAsync | registerPushDevice |
| 禁用 Push | disablePushDevice | disablePushDevice | disablePushDevice | DisablePushDeviceAsync | disablePushDevice |
| 设备会话列表 | listDeviceSessions | listDeviceSessions | listDeviceSessions | ListDeviceSessionsAsync | listDeviceSessions |
| 撤销设备会话 | revokeDeviceSession | revokeDeviceSession | revokeDeviceSession | RevokeDeviceSessionAsync | revokeDeviceSession |
5. 好友与黑名单
| 统一能力 | iOS | macOS | Android | Windows | HarmonyOS |
|---|---|---|---|---|---|
| 发好友申请 | sendFriendRequest | sendFriendRequest | sendFriendRequest | SendFriendRequestAsync | sendFriendRequest |
| 处理好友申请 | resolveFriendRequest | resolveFriendRequest | resolveFriendRequest | ResolveFriendRequestAsync | resolveFriendRequest |
| 删除好友 | deleteFriendship | deleteFriendship | deleteFriendship | DeleteFriendshipAsync | deleteFriendship |
| 好友备注 | setFriendRemark | setFriendRemark | setFriendRemark | SetFriendRemarkAsync | setFriendRemark |
| 好友申请列表 | friendRequests | friendRequests | friendRequests | ListFriendRequestsAsync | friendRequests |
| 好友列表 | friendships | friendships | friendships | ListFriendshipsAsync | friendships |
| 拉黑/解除 | setBlock | setBlock | setBlock | SetBlockAsync | setBlock |
| 黑名单 | blocks | blocks | blocks | ListBlocksAsync | blocks |
6. 群组
| 统一能力 | iOS | macOS | Android | Windows | HarmonyOS |
|---|---|---|---|---|---|
| 创建群 | createGroup | createGroup | createGroup | CreateGroupAsync | createGroup |
| 增删成员 | changeGroupMembers | changeGroupMembers | changeGroupMembers | ChangeGroupMembersAsync | changeGroupMembers |
| 退群 | leaveGroup | leaveGroup | leaveGroup | LeaveGroupAsync | leaveGroup |
| 解散群 | dismissGroup | dismissGroup | dismissGroup | DismissGroupAsync | dismissGroup |
| 申请入群 | requestGroupJoin | requestGroupJoin | requestGroupJoin | RequestGroupJoinAsync | requestGroupJoin |
| 处理入群申请 | resolveGroupJoin | resolveGroupJoin | resolveGroupJoin | ResolveGroupJoinAsync | resolveGroupJoin |
| 群治理 | changeGroupGovernance | changeGroupGovernance | changeGroupGovernance | ChangeGroupGovernanceAsync | changeGroupGovernance |
| 群列表 | groups | groups | groups | ListGroupsAsync | groups |
| 群成员 | groupMembers | groupMembers | groupMembers | ListGroupMembersAsync | groupMembers |
| 入群申请列表 | groupJoinRequests | groupJoinRequests | groupJoinRequests | ListGroupJoinRequestsAsync | groupJoinRequests |
7. 媒体
| 统一能力 | iOS | macOS | Android | Windows | HarmonyOS |
|---|---|---|---|---|---|
| 图片 | client.sendImage | client.sendImage | client.sendImage | XHIMMediaMessaging.SendImageAsync | XHIMMediaMessaging.sendImage |
| 视频 | client.sendVideo | client.sendVideo | client.sendVideo | XHIMMediaMessaging.SendVideoAsync | XHIMMediaMessaging.sendVideo |
| 音频 | client.sendAudio | client.sendAudio | client.sendAudio | XHIMMediaMessaging.SendAudioAsync | XHIMMediaMessaging.sendAudio |
| 文件 | client.sendFile | client.sendFile | client.sendFile | XHIMMediaMessaging.SendFileAsync | XHIMMediaMessaging.sendFile |
| 接受上传 | acceptMediaUpload | acceptMediaUpload | acceptMediaUpload | CreateMediaUploadAsync | acceptMediaUpload |
| 接受下载 | acceptMediaDownload | acceptMediaDownload | acceptMediaDownload | CreateMediaDownloadAsync | acceptMediaDownload |
| 查询任务 | mediaTask | mediaTask | mediaTask | GetMediaTaskAsync | mediaTask |
| 取消任务 | cancelMediaTask | cancelMediaTask | cancelMediaTask | CancelMediaTaskAsync | cancelMediaTask |
| 打开缓存 | openMediaCacheReader | openMediaCacheReader | openMediaCacheReader | OpenMediaCacheReaderAsync | openMediaCacheReader |
8. 离线 Reader
| 统一能力 | iOS | macOS | Android | Windows | HarmonyOS |
|---|---|---|---|---|---|
| 打开 | XHIMOfflineReader.open | XHIMOfflineReader.open | XHIMOfflineReader.open | XHIMOfflineReader.OpenAsync | XHIMOfflineReader.open |
| 消息 | messages | messages | messages | MessagesAsync | messages |
| 搜索 | searchMessages | searchMessages | searchMessages | SearchMessagesAsync | searchMessages |
| 会话 | conversations | conversations | conversations | ConversationsAsync | conversations |
| 好友申请 | friendRequests | friendRequests | friendRequests | FriendRequestsAsync | friendRequests |
| 好友 | friendships | friendships | friendships | FriendshipsAsync | friendships |
| 群 | groups | groups | groups | GroupsAsync | groups |
| 群成员 | groupMembers | groupMembers | groupMembers | GroupMembersAsync | groupMembers |
| 黑名单 | blocks | blocks | blocks | BlocksAsync | blocks |
| 入群申请 | groupJoinRequests | groupJoinRequests | groupJoinRequests | GroupJoinRequestsAsync | groupJoinRequests |
| 关闭 | close | close | close | DisposeAsync | close |
9. 通用请求取消
| iOS | macOS | Android | Windows | HarmonyOS |
|---|---|---|---|---|
Swift Task / XHIMRequest.cancel() | Swift Task / XHIMRequest.cancel() | Coroutine cancellation | 每个异步方法的 CancellationToken | 每个 Promise 可用 onRequest 取 ID,再调用 cancelRequest |
这项差异是语言原生设计,不代表功能缺失。业务取消消息或媒体任务时仍应使用 对应的 durable cancel API。
10. 跨端框架
| 框架 | 客户 API | 底层映射 | 当前范围 |
|---|---|---|---|
| Flutter | XHIMFlutterClient | iOS、macOS、Android 原生 Facade | 首批连接/消息/会话/已读;完整范围见支持矩阵 |
| Electron Main | XHIMElectronClient.raw | 完整 shared Node-API bridge | 与 HarmonyOS NativeClient 同面 |
| Electron Renderer | window.xhim | Main Process 固定 IPC 白名单 | 默认只暴露页面需要的最小能力 |
| Web / Browser | XHIMWebClient | TypeScript Web Lite Runtime + Protobuf Fetch/WSS | 连接/续凭/重连/同步/单聊/消息/已读/Presence/Typing |
Web 的独立接入和 API 表见 Web QuickStart。React Native、Unity、uni-app 和小程序尚未进入公开 API 名称表;它们的 实际 Adapter 和消费者门禁状态以平台支持矩阵为准。