浏览 SDKs · iOS
SDKsiOS

发送第一条消息

在 iOS 应用中验证单聊或群聊的首条文本消息发送链路。

复制

本页说明如何安装并初始化 OpenIM iOS SDK,登录后发送第一条文本消息。单聊使用目标用户 recvID;群聊使用目标群组 groupID

准备消息目标

场景目标标识
单聊已存在的接收方用户 ID,写入 recvID
群聊已存在的群组 ID,写入 groupIDrecvIDnil

发送权限仍由 OpenIMServer 的关系、群状态和群成员权限校验。

开始使用

第 1 步:安装 SDK

pod 'OpenIMSDK'

安装后打开 .xcworkspace,并导入 SDK:

@import OpenIMSDK;

第 2 步:初始化并登录

使用 OIMInitConfig 初始化 SDK,收到连接成功 callback 后再进入消息流程。初始化和 Token 处理见认证与管理登录会话

[[OIMManager manager] login:userID
                         token:token
                     onSuccess:nil
                     onFailure:^(NSInteger code, NSString *message) {
                         NSLog(@"OpenIMSDK login failed: %ld %@", (long)code, message);
                     }];

第 3 步:确定目标

NSString *recvID = @"user_b";
NSString *groupID = nil;

群聊时改为 recvID = nil,并填写真实的 groupID

第 4 步:创建并发送文本消息

OIMMessageInfo *message = [OIMManager createTextMessage:@"你好,OpenIMSDK"];

[[OIMManager manager] sendMessage:message
                           recvID:recvID
                          groupID:groupID
                     isOnlineOnly:NO
                  offlinePushInfo:nil
                        onSuccess:^(OIMMessageInfo *sentMessage) {
                            [messageStore upsertMessage:sentMessage
                                           clientMsgID:sentMessage.clientMsgID];
                        }
                       onProgress:^(NSInteger progress) {
                            // 文本消息通常无需展示进度。
                        }
                        onFailure:^(NSInteger code, NSString *message) {
                            NSLog(@"OpenIMSDK send failed: %ld %@", (long)code, message);
                        }];

createTextMessage: 只创建本地 OIMMessageInfo,不会触发共享消息事件。发送成功 callback 返回发送后的消息,当前端按 clientMsgID 合并;对端通过消息 delegate 接收。callback 成功和对端事件到达是两个阶段,应分别验证。

下一步