iOS客户端下如果获取服务器的透传消息

我在当前的viewcontroller里添加了delegate,发现透传消息会在方法````- (void)didReceiveMessage:(EMMessage *)message````打印
 
共4个回复

lifei9241

2015-11-04 13:29

看你贴的图,type是txt是普通文字消息,这时候自然是走didReceiveMessage的。接收消息,不管是透传还是普通消息,都要 1. 声明实现IChatManagerDelegate,如: @interface EaseMobSDKAccountManager ()<IChatManagerDelegate> 2. 注册当前类接收回调 [[EaseMob sharedInstance].chatManager addDelegate:self delegateQueue:nil]; 3. 实现对应回调方法,如: // 收消息的回调  -(void)didReceiveMessage:(EMMessage *)message{   } 另外没有必要每次都创建一个conversation对象,SDK会自动创建。

honeyCream

2015-11-04 13:35

知道了~谢谢

honeyCream

2015-11-04 16:07

我发送图片的时候 receiver传得是对方用户的id 然后数据库报错.是不是因为没有用Conversation对象的原因?消息貌似是成功发送了.然后我在EMImageMessageBody里面 为何获取不到图片的信息?

honeyCream

2015-11-04 16:08

@108

活在当下

2018-03-20 23:09

发送透传的消息如何实现呀在ios端,然后我发送出去收不到消息呢是怎么回事呢?  

lifei9241

2015-11-04 12:44

发的不是透传吧,接收透传 /*! @method @brief 收到消息时的回调 @param cmdMessage 消息对象  @discussion 当EMConversation对象的enableReceiveMessage属性为YES时, 会触发此回调  */  - (void)didReceiveCmdMessage:(EMMessage *)cmdMessage;

honeyCream

2015-11-04 12:48

确实是透传透传消息,不过已经看到了这个方法.另外问题就是 是不是只有实现这个委托才能获取透传消息?.还有就是每次对话必须要创建一次EMConversation对象吗?我不创建会有什么影响?

honeyCream

2015-11-04 12:53

不过貌似发送的不是透传消息,我的控制台打印是这个格式,这是应该是SDK自带的打印吧?所以我应该还是在- (void)didReceiveMessage:(EMMessage *)message方法里面获取消息吗?
点击此处继续提问与开发者们互动

申请试用

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

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

×

在线咨询

电话咨询

技术咨询

免费试用