iOS 扩展消息为空

在发送消息的时候,已经给扩展消息赋值,为什么在解析的时候ext为空呢?
共12个回复

环信沈冲

2015-10-20 11:40

ext应该没有赋值成功。

难怪,

2015-10-20 13:06

赋成功了啊 我程序退出后 在进来直接获取程序列表 但是我在列表界面打印的时候是null

环信沈冲

2015-10-20 13:31

消息获取到了吗?

难怪,

2015-10-20 13:35

没有哎

难怪,

2015-10-20 13:39

是在发送消息的时候赋值的  

难怪,

2015-10-20 13:39

这个ext之前是有给赋值的

lifei9241

2015-10-20 14:44

@3505:在哪里赋值的,是在发送的动作之前吗

难怪,

2015-10-20 14:54

是啊,就上面代码的 字典里面

难怪,

2015-10-20 14:55

在sendTextMessage:(NSString *)textMessage 里面的 第一行字典里面

难怪,

2015-10-20 15:05

@108: 在sendTextMessage:(NSString *)textMessage 里面的 第一行字典里面

难怪,

2015-10-20 15:11

- (void)sendTextMessage:(NSString *)textMessage {    NSDictionary *ext = @{@"name" : @"zhangsan"};    EMMessage *tempMessage = [ChatSendHelper sendTextMessageWithString:textMessage                                                             toUsername:_conversation.chatter                                                            messageType:[self messageType]                                                      requireEncryption:NO                                                                    ext:ext];     [self addMessage:tempMessage]; }

难怪,

2015-10-20 16:51

ok  搞定了,谢谢了,兄弟。

lifei9241

2015-10-20 17:18

ok,不客气

helloworld9221

2016-10-18 10:22

利用消息扩展怎么获取昵称和头像,我的也是ext为空,怎么解决的?

lifei9241

2015-10-20 13:35

给ext赋值的动作要确保在发送的动作之前

lifei9241

2015-10-20 15:08

你贴一下你发送时的代码

难怪,

2015-10-20 15:18

- (void)sendTextMessage:(NSString *)textMessage { NSDictionary *ext = @{@"name" : @"zhangsan"}; EMMessage *tempMessage = [ChatSendHelper sendTextMessageWithString:textMessage toUsername:_conversation.chatter messageType:[self messageType] requireEncryption:NO ext:ext]; [self addMessage:tempMessage]; }

lifei9241

2015-10-20 15:36

接收方didReceiveMessage回调里打印看一下 有没有ext。

难怪,

2015-10-20 16:00

可以收到

难怪,

2015-10-20 16:03

但是我在列表界面的 cell里面打印 NSDictionary *ext = conversation.ext; NSLog(@"%@", ext); 是null

难怪,

2015-10-20 16:04

//在列表界面(ChatListViewController)的 - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath 里面 if (conversation.conversationType == eConversationTypeChat) { NSDictionary *ext = conversation.ext; NSLog(@"%@", ext); cell.name = [[RobotManager sharedInstance] getRobotNickWithUsername:conversation.chatter]; cell.imageURL = [NSURL URLWithString:@""]; }

lifei9241

2015-10-20 16:29

conversation.ext和message.ext不是同一个东西。conversation.ext只是在本地处理的,你可以根据这个自定义操作你的conversation。
点击此处继续提问与开发者们互动

申请试用

提交后工作人员会尽快与您联系进行功能演示
技术咨询已转移到管理后台,请先登录

即时通讯云使用者请在应用详情页面咨询
客服云使用者请进入管理员模式咨询

×

400电话

在线咨询

技术咨询

免费试用