WEB开发网
开发学院手机开发Ophone 开发 实现基于OPhone 2.0的GTalk客户端 阅读

实现基于OPhone 2.0的GTalk客户端

 2010-10-19 20:56:29 来源:WEB开发网   
核心提示:发送聊天信息当单击某个联系人时,就会弹出一个聊天界面,实现基于OPhone 2.0的GTalk客户端(5),如图2所示,在界面的上方会显示对方的帐号(GMail地址),下面先看一下使用Gtalk客户端和CSDN的微博客机器人进行聊天的效果,Gtalk客户端如图3所示,当单击【发送】按钮后,会将界面下方文本框中的内容发送

发送聊天信息

当单击某个联系人时,就会弹出一个聊天界面,如图2所示。在界面的上方会显示对方的帐号(GMail地址)。

(图)实现基于OPhone 2.0的GTalk客户端(二)

当单击【发送】按钮后,会将界面下方文本框中的内容发送给另一端的用户。要想发送信息,首先需要创建一个org.jivesoftware.smack.Chat对象,然后使用Chat类的sendMessage方法发送消息。创建Chat对象的代码如下:

复制到剪贴板 Java代码

ChatManager chatmanager = GTalk.mConnection.getChatManager();

mChat = chatmanager.createChat(mContactAccount, null);

其中mChat是在ChatRoom类中定义的Chat类型的变量。

下面看一下【发送】按钮的单击事件方法的代码。

复制到剪贴板 Java代码

public void onClick(View view)

{

String msg = metMessage.getText().toString();

if (!"".equals(msg))

{

try

{

// 向联系人发送消息

mChat.sendMessage(msg);

// 清空输入消息的文本框

metMessage.setText("");

// 将聊天记录添加到EditText组件中

metMessageList.append("我: ");

metMessageList.append(msg + " ");

}

catch (Exception e)

{

}

}

}

接收聊天信息

虽然在前面介绍了如何发送消息,但并不能接收来自另一端的聊天消息。虽然监听聊天消息也可以通过事件完成,但可能是由于Asmack的bug,几乎所有的事件都无法进行监听(也许在以后的版本中会更正)。因此,我们需要在线程中以循环的方式监听聊天消息。下面先看一下使用Gtalk客户端和CSDN的微博客机器人进行聊天的效果。Gtalk客户端如图3所示,

(图)实现基于OPhone 2.0的GTalk客户端(二)

MessageReceiver类负责以循环的方式监听聊天消息,代码如下:

复制到剪贴板 Java代码

上一页  1 2 3 4 5 6 7 8  下一页

Tags:实现 基于 OPhone

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接