发表于: 2018-12-29 19:39:36

0 932


今天完成的事情

提交了任务十二

任务中使用了BmobNewIM SDK以及Bmob SDK主要流程如下

1.连接服务器

登录成功、注册成功或处于登录状态重新打开应用后执行连接IM服务器的操作,调用connect方法,需要传入唯一用户标示clientId

断开连接:

调用disConnect方法,客户端会断开与服务器之间的连接,再次聊天需要重新调用connect方法完成与服务器之间的连接。

监听连接状态:

调用setOnConnectStatusChangeListener方法即可监听到当前长链接的连接状态。

2.会话

BmobNewIM SDK 采用会话(BmobIMConversation)管理消息(BmobIMMessage)的方式,即消息的发送、查询和删除等操作均在指定会话下进行,因此需要先获取指定会话信息BmobIMUserInfo后创建会话入口(BmobIMConversation)conversationEntrance。创建会话入口成功后跳转到聊天页面,根据会话入口获取消息管理(BmobIMConversation)messageManager,而后使用消息管理在聊天页面进行消息的发送、查询和删除等操作

3.消息

消息(BmobIMMessage)是所有消息的基类,其中isTransient属性来标识该条消息是否自动保存到指定会话的本地数据库中。

设置为true,表明是暂态消息,那么这条消息并不会自动保存到指定会话的本地消息数据库中,SDK只负责发送和接收。

设置为false,表明不是暂态消息,那么这条消息会自动保存到指定会话的本地消息数据库中,并提供查询和删除操作。

获取消息管理:

BmobNewIM SDK 采用会话(BmobIMConversation)管理消息(BmobIMMessage)的方式,即消息的发送、查询和删除等操作均在指定会话下进行,因此需要先获取指定会话信息BmobIMUserInfo后创建会话入口(BmobIMConversation)conversationEntrance。创建会话入口成功后跳转到聊天页面,根据会话入口获取消息管理(BmobIMConversation)messageManager,而后使用消息管理在聊天页面进行消息的发送、查询和删除等操作。

接收消息:

自定义消息接收器继承自BmobIMMessageHandler来处理服务器发来的消息和离线消息。

SDK内部使用EventBus来进行应用内消息的分发,故在应用内需要接收消息的地方注册和解注册EventBus即可,不过SDK并没有集成EventBus,开发者需要在自己的项目中另外集成EventBus。

SDK内部有两种EventBus事件:MessageEvent(在线消息)、OfflineMessageEvent(离线消息)。


重新理了一遍Activity和Fragment'的生命周期,总结如下



明天的计划

日志、断点调试


收获

重新理了一遍Activity和Fragment'的生命周期


返回列表 返回列表
评论

    分享到