我在环信登录成功的回调中插入了一条消息,但是数据库中并没有这一条消息请问是为什么?
[[EMClient sharedClient] loginWithUsername:xxx password:xxx completion:^(NSString *aUsername, EMError *aError) {
if (!aError) {
//环信登录 成功
NSLog(@"用户名为 --- %@",aUsername);
EMConversation *conversation = [[EMClient sharedClient].chatManager getConversation:@"对方的Id" type:0 createIfNotExist:YES];
EMTextMessageBody *body = [[EMTextMessageBody alloc] initWithText:@"感谢您的注册"];
//生成Message
EMMessage *message1 = [[EMMessage alloc] initWithConversationID:conversation.conversationId from:[EMClient sharedClient].currentUsername to:conversation.conversationId body:body ext:nil];
message1.direction = 1;
message1.isRead = NO;
message1.status = EMMessageStatusSuccessed;
message1.chatType = EMChatTypeChat;// 设置为单聊消息
[[EMClient sharedClient].chatManager importMessages:@[message1] completion:^(EMError *aError) {
}];
}
else{
//环信登录失败
NSLog(@"环信登录失败 ---- %@",aError.errorDescription);
}
}];
代码如上所示,但是在数据库中并不能找到这条消息,所有回调的error都是nil,请问是为什么?sdk的版本是3.x
if (!aError) {
//环信登录 成功
NSLog(@"用户名为 --- %@",aUsername);
EMConversation *conversation = [[EMClient sharedClient].chatManager getConversation:@"对方的Id" type:0 createIfNotExist:YES];
EMTextMessageBody *body = [[EMTextMessageBody alloc] initWithText:@"感谢您的注册"];
//生成Message
EMMessage *message1 = [[EMMessage alloc] initWithConversationID:conversation.conversationId from:[EMClient sharedClient].currentUsername to:conversation.conversationId body:body ext:nil];
message1.direction = 1;
message1.isRead = NO;
message1.status = EMMessageStatusSuccessed;
message1.chatType = EMChatTypeChat;// 设置为单聊消息
[[EMClient sharedClient].chatManager importMessages:@[message1] completion:^(EMError *aError) {
}];
}
else{
//环信登录失败
NSLog(@"环信登录失败 ---- %@",aError.errorDescription);
}
}];
代码如上所示,但是在数据库中并不能找到这条消息,所有回调的error都是nil,请问是为什么?sdk的版本是3.x
没有找到相关结果
已邀请:
2 个回复
[已注销]
}];换成 [conversation insertmessage:]
[已注销]
赞同来自: waxhr123
insertmessage和append都可以直接更新到内存来刷新UI.