Android 发送和接收即时消息

原创
2013/09/09 13:59
阅读数 962

发送即时文本消息

一旦你拥有一个活跃的聊天会话,使用sendChatMessage方法来对会话中的联系人发送消息,如下面的代码片段所示:

Java代码:

chatSession.sendChatMessage(“HelloWorld!”);

指定的消息文本将会传送给在当前会话中的所有联系人。

接收即时文本消息

为了监听新来的消息,实现IChatListener接口,重写它的newMessageReceived处理函数。你可以通过特定的聊天会话或者更加通用的IM会话来注册这个接口,方法是调用addRemoteChatListener方法。

下面的代码片段显示了创建和注册IChatListener接口的框架代码,其中,同时在特定的聊天会话和IM会话中进行注册。需要注意的是,IChatListener接口包含一个桩类,当你创建自己的聊天监听者实现时你必须扩展它。

Java代码:

<!-- lang: java -->
IChatListenerchatListener=newIChatListener.Stub(){ 

publicvoidnewMessageReceived(Stringfrom,Stringbody){ 

//TODOHandleincomingmessages. 

} 



//要求实施小组闲谈. 

publicvoidconvertedToGroupChat(StringoldJid,StringgroupChatRoom,longgroupId)     {} 

publicvoidparticipantJoined(StringgroupChatRoom,Stringnickname){} 

publicvoidparticipantLeft(StringgroupChatRoom,Stringnickname){} 

publicvoidchatClosed(StringgroupChatRoom)throwsRemoteException{} 

publicvoidchatRead(Stringarg0)throwsRemoteException{} 

}; 



//在聊天室聊天的听众增加会话. 

chatSession.addRemoteChatListener(chatListener); 



//增加听者的即时短信聊天的会议. 

imSession.addRemoteChatListener(chatListener); 

使用IM会话注册的聊天监听者将接收所有与这个会话有关联的任一聊天会话接收的消息,所以,这里的消息处理方式应该相当的通用。相反的,用一个聊天会话注册的监听者将只关注与这个特定的会话有关的消息和事件。

移动开发交流群:164427941

展开阅读全文
打赏
0
1 收藏
分享
加载中
更多评论
打赏
0 评论
1 收藏
0
分享
返回顶部
顶部