问题描述
通过UIdemo注册了几个用户,相互聊天。到了自己的项目中,这些用户都可以登录,但conversations内容一直是0.为了找原因我把demo代码中的Application+EaseMob,LoginViewController,ChatListViewController等等直接copy到一个新建项目中,导入sdk及依赖库,运行结果还是用户都可以登录,但conversations内容一直是0.为什么只能在demo中获取到conversations,而新建的项目却不行??
解决方案
从SDK数据库中load数据 SDK提供了一系列的从数据库中获取数据的方法,IOS的接口以load开头,比如 , ,。 IOS SDK在2.1.1版本开始,使用了sqlite,废弃了旧版的数据库,所以开发者们在写从2.1.0版本升级功能时,需要调用接口【importDataToNewDatabase】,在该接口成功之后,再调用load相关方法进行获取数据。 IOS SDK从2.1.6版本开始,不再在内部进行load相关方法,开发者可以根据自己的需求,自主定制调用load接口。比如,登录成功之后,你只想获取群组,那你就可以只调用方法;如果你想获取所有数据,就要调用 ,so easy。
解决方案二:
楼上说的是下面这段代码吧EMError *error = [.chatManager importDataToNewDatabase]; if (!error) { error = [.chatManager loadDataFromDatabase]; }它在LoginViewController手动登录时,及AppDelegate+EaseMob自动登录时出现,这两处我都没有遗漏,为什么还是加载不到会话数据
解决方案三:
在客户端 conversation是从本地取的,你本地没有的话,当然是取不到的。