发送数据消息

一个好的习惯是当向远程设备广播Intent时创建自定义的动作,如下面的片段所示:

 

public static final String ACTION_OTA_ELIMINATE = com.paad.ota_eliminate_action;

 

接下来的片段将显示如何创建一个简单的Intent,它将包装到数据消息中,来向远程设备传递上述的动作:

 

Intent intent = new Intent(ACTION_OTA_ELIMINATE);

 

和一般广播Intent一样,你可以在Intent中打包额外的信息。这些额外的信息在远程设备上重新广播时也将包含在Intent中。

 

intent.putExtra(long, String.valueOf(location.getLatitude()));

intent.putExtra(lat, String.valueOf(location.getLatitude()));

intent.putExtra(target, Sarah Conner);

intent.putExtra(sender, gTalk.getUsername());

 

目前,OTA Intent广播机制只支持字符串额外信息。非字符串信息在传递前将被忽略,而且在目标设备上将获取不到。

 

使用sendDataMessage方法来发送消息,传入目标用户名和要广播的IntentsendDataMessage可通过IMSessionChatSession得到,如下所示:

 

String username = T1000@sky.net;

 

// Send to target user.

imSession.sendDataMessage(username, intent);

 

// Send to all chat room participants.

chatSession.sendDataMessage(intent);
posted on 2009-10-07 21:29  xirihanlin  阅读(530)  评论(0编辑  收藏  举报