求助:使用环信SDK在iOS上无法收到加入群组消息

问题描述

详细情况如下:1. 在application:didFinishLaunchingWithOptions:launchOptions已调用以下方法[[EaseMob sharedInstance] registerSDKWithAppKey:AppKey apnsCertName:CertName otherConfig:nil];[[EaseMob sharedInstance] application:application didFinishLaunchingWithOptions:launchOptions];2. 用户已成功登陆过并设置了自动登陆3. 已经继承了EMChatManagerDelegate接口并进行了注册[[EaseMob sharedInstance].chatManager removeDelegate:self];[[EaseMob sharedInstance].chatManager addDelegate:self delegateQueue:nil];但当其它客户端发送加入群组请求时didReceiveApplyToJoinGroup:groupname:applyUsername:reason:error:不会被调用。但控制台里会输出如下信息:RECV: <message from='95190#beiqizhijia_admin@easemob.com' to='95190#beiqizhijia_13752450315@easemob.com' id='130700131203809768' type='chat'><body>{&quot;from&quot;:&quot;18222954671&quot;,&quot;to&quot;:&quot;13752450315&quot;,&quot;bodies&quot;:[{&quot;action&quot;:&quot;applyAction&quot;,&quot;type&quot;:&quot;cmd&quot;}],&quot;ext&quot;:{&quot;groupId&quot;:&quot;130681715021578696&quot;,&quot;content&quot;:&quot;yyyyy&quot;}}</body><delay xmlns='urn:xmpp:delay' stamp='2015-11-20T05:03:15.692Z'/></message>SEND: <message to="95190#beiqizhijia_admin@easemob.com" id="130700131203809768"><received xmlns="urn:xmpp:receipts" id="130700131203809768"/></message>看样子服务器已经把消息发送到手机端了,但不知道为什么代码没有收到通知。

解决方案

回调所在的类没有初始化吧,你写在appdelegate里试试
解决方案二:
回调所在的类在[[EaseMob sharedInstance] application:application didFinishLaunchingWithOptions:launchOptions];之后就初始化了
解决方案三:
你先把这个回调函数写在appdelegate中,看看是否调用协议:IChatManagerDelegate代理:[[EaseMob sharedInstance].chatManager addDelegate:self delegateQueue:nil];  //接收到入群申请- (void)didReceiveApplyToJoinGroup:(NSString *)groupId                         groupname:(NSString *)groupname                     applyUsername:(NSString *)username                            reason:(NSString *)reason                             error:(EMError *)error
解决方案四:
回调函数写在appdelegate测试不起作用,控制台输出能看到确实收到消息了,但回调函数还是不会被调用
解决方案五:
您创建的这个群组是什么类型的?
解决方案六:
群组的创建是服务器端做的,是另一家公司。。。服务器端应该都是一样的,不区分手机平台。Android版的程序可以收到iOS端发出的加入群组请求并处理,iOS上只能收到消息,回调函数无法被调用。两端测试用的账号都是群组的创建者,群组里除了创建者就没有别人了。
解决方案七:
将方法写在根控制器下,并且将APP界面停留在根控制器下,注册代理,测试。
解决方案八:
请问写在根控制器下和写在AppDelegate下有什么区别吗?目前用AppDelegate无法收到环信的回调。
解决方案九:
经测试,回调方法在收到入群申请的时候,在appdelegate中是可以执行的,您按照前面评论回复步骤重新测试,需要登录成功,并走了代理方法,并在收到入群申请消息前初始化该类。
解决方案十:
试了很久还是不行。我把相关的部分抽出来单独写了个工程测试还是不行,哪位好心的大神能帮我看一下附件里的代码。这个账号创建了一个ID是132611255931241068的群组,但在其它人申请加入的时候客户端无法收到环信SDK的回调,但在控制台中可以看到确实收到了服务器发过来的消息。
解决方案十一:
检测一下群组ID。。。。
解决方案十二:
群组ID有什么问题吗?
解决方案十三:
加群的方法是怎么做的?
解决方案十四:
找到问题了,服务器端走的是消息透传,不会触发这个回调。多谢各位的帮助。

时间: 2024-08-04 01:59:46

求助:使用环信SDK在iOS上无法收到加入群组消息的相关文章

环信SDK在IOS上关闭应用再打开应用收不到历史会话列表(已经登录).

问题描述 创建一个会话,发送一个消息,会话列表中有这个会话.但是关闭再打开应用后使用方法 loadAllConversationsFromDatabaseWithAppend2Chat 却接受不到历史会话. (账号已经登录).  这是为什么啊,求大神解答... 解决方案 如果你没有设置自动登录的话,看下你的登录成功后,是否调用了获取数据库中数据的方法.如图:

请问为什么IOS的环信SDK高达90M

问题描述 请问为什么IOS的环信SDK高达90M 解决方案 SDK大不影响打包成ipa,打包出ipa安装包后,一般只会增加2MB左右.

iOS环信SDK 导入Demo中3rdparty里面的VoiceConvert这个库,会报Undefined symbols for architecture i386

问题描述 iOS环信SDK 想集成Demo中已经写好的UI,导入Demo中3rdparty里面的VoiceConvert这个库,会报Undefined symbols for architecture i386,删掉就能正常运行. 解决方案 你对照demo看下,是不是少库.

ios 环信sdk在集成百度导航的sdk后,环信的登陆出错

问题描述 环信sdk在集成百度导航的sdk后,环信的登陆出错,登陆总是报错:服务器未知错误,编译和运行都没有问题,没有提示两个sdk的包有任何冲突问题,但是,只要加入百度导航的sdk,环信的登陆就失败,去掉百度导航的sdk后,环信登陆就正常了 解决方案 APP 中有第三方的服务启动,请在初始化 SDK(EMChat.getInstance().init(applicationContext))方法的前面添加以下相关代码(相应代码也可参考 Demo 的 application).解决方案二:ios

IOS 环信sdk有没有可以获取&amp;amp;quot;当前在线的用户&amp;amp;quot;的接口,有的话请问在哪,服务器端的接口也可以

问题描述 我的app需要显示当前在线的所有用户,环信sdk有这种接口么?服务器端的接口也可以,只要能获取当前在线用户就可以 解决方案 都没有.

android-使用环信SDK开发即时通信功能(附源码下载)_Android

最近项目中集成即时聊天功能,挑来拣去,最终选择环信SDK来进行开发,选择环信的主要原因是接口方便.简洁,说明文档清晰易懂.文档有Android.iOS.和后台服务器端,还是非常全的.  环信官网:http://www.easemob.com/ 本篇文章目的主要在于说明环信Demo如何实现即时通信的.我在集成环信SDK到我们自己开发的app之前,研究了一下环信demo的代码,看了两三天的样子,基本搞清楚来龙去脉,但是只是清楚来龙去脉,要说到里面的细节可能得深一步研究,但是这就够了,已经可以把dem

收集基于环信SDK开发的开源项目

问题描述 未来的开发者,将越来越多基于云端功能提供的SDK的进行开发,基于环信SDK开发的项目就已经超过3万个. 如果你们什么好的项目,特别是基于环信SDK开发的,并且愿意开源分享出来,请跟贴回复,我们将收录在imgeek的"代码"区,http://www.imgeek.org/page/code,让你的成果与更多人分享. 回帖时请说明:. 项目名称. 代码提交者名称及链接. 源代码地址. 打包后的下载地址. 项目功能说明 解决方案 http://www.imgeek.org/?/pa

android-使用环信SDK开发即时通信功能(附源码下载)

最近项目中集成即时聊天功能,挑来拣去,最终选择环信SDK来进行开发,选择环信的主要原因是接口方便.简洁,说明文档清晰易懂.文档有Android.iOS.和后台服务器端,还是非常全的. 环信官网:http://www.easemob.com/ 本篇文章目的主要在于说明环信Demo如何实现即时通信的.我在集成环信SDK到我们自己开发的app之前,研究了一下环信demo的代码,看了两三天的样子,基本搞清楚来龙去脉,但是只是清楚来龙去脉,要说到里面的细节可能得深一步研究,但是这就够了,已经可以把demo

项目里面只需要环信SDK聊天和好友功能,其他都不用,那SDK一定要总是跟着更新么?

问题描述 请问:项目里面不需要环信SDK的太多功能,只是想要聊天和好友功能,其他都不用,那SDK一定要总是跟着更新么? 解决方案 解决方案二:我个人认为:1.环信SDK版本都是向前兼容并且稳定的,每次更新安卓只需要更新jar包(iOS只要更新.a包)即可.2.每次更新的版本都是稳定可靠性的,可以放心使用.若有不正确.不妥的地方,望各位指正,谢谢!解决方案三:回答很专业哦.受益匪浅!