安卓实时弹幕demo(二)消息透传

来源:互联网 发布:itudou官方下载mac 编辑:程序博客网 时间:2024/05/16 12:43

////////////////2016/08/03////////////////

///////////////by  xbw/////////////////////

//////////android studio//////////////




实时弹幕,做到实时,就是A客户端发送了弹幕,将弹幕发送到服务器端,通过服务器的调配,使得B客户端以及A客户端,CDEFG客户端都能及时收到消息,那我们就用到了信鸽推送的消息透传,有了这个东西,我觉得做个即时通讯也是分分钟的事。

先去腾讯信鸽看看,传送门

传送到了帮助文档,解释很详细了,按着帮助文档配置就好了。


透传消息命令(可自定义展示任意位置)

指的是由信鸽下发给APP的内容,需要APP继承XGPushBaseReceiver接口实现并自主处理所有操作过程,也就是说,下发的消息默认是不会展示在通知栏的,信鸽只负责将消息从信鸽服务器下发到APP这个过程,不负责消息的处理逻辑,需要APP自己实现。具体可参考Demo中的CustomPushReceiver。

消息指的是由开发者通过前台或后台脚本下发的文本消息,信鸽只负责将消息传递给APP,APP完全自主负责消息体的处理。

消息具有灵活性强和高度定制性特点,因此更适合APP自主处理个性化业务需求,比如下发APP配置信息、自定义处理消息的存储和展示等。

例如:某游戏需要针对不同情景(用户升级提示、版本更新提示、活动营销提示等)提供不同的通知,可以把这些情景以json格式封装在消息,下发到APP,然后APP根据这些场景提供不同的提示,满足个性化需求。


  • 消息配置

若要接收消息,需要配置消息接收Receiver,即在AndroidManifest.xml配置以下信息,其中android:name的值需要修改为APP自己实现的Receiver。

[html] view plain copy
print?在CODE上查看代码片派生到我的代码片
  1. <!-- APP实现的Receiver,用于接收消息和结果反馈 -->  
  2. <!-- com.tencent.android.xgpushdemo.CustomPushReceiver需要改为自己的Receiver -->  
  3. <receiver android:name="com.tencent.xgpushdemo.CustomPushReceiver" >  
  4. <intent-filter>  
  5. <!-- 接收消息透传 -->  
  6. <action android:name="com.tencent.android.tpush.action.PUSH_MESSAGE" />  
  7. <!-- 监听注册、反注册、设置/删除标签、通知被点击等处理结果 -->  
  8. <action android:name="com.tencent.android.tpush.action.FEEDBACK" />  
  9.     </intent-filter>  
  10. </receiver>  

  • 接收消息

开发者在前台下发消息,需要APP继承XGPushBaseReceiver重载onTextMessage方法接收,成功接收后,再根据特有业务场景进行处理。

同时,XGPushBaseReceiver还提供其它相关的接口,如通知被展示、被点击的结果反馈、注册/反注册结果反馈等,请参考“XGPushBaseReceiver”章节或demo。

请确保在AndroidManifest.xml已经注册过该receiver,即设置YOUR_PACKAGE.XGPushBaseReceiver。


[java] view plain copy
print?在CODE上查看代码片派生到我的代码片
  1. public void onTextMessage(Context context,   
  2. XGPushTextMessage message)  

context:应用当前上下文

message:接收到消息结构体,其中XGPushTextMessage的方法列表如下:



方法名返回值默认值描述getContent()String""消息正文内容,通常只需要下发本字段即可getCustomContent()String""消息自定义key-valuegetTitle()String""消息标题(注意:从前台下发消息命令字中的描述不属于标题)

我们需要接受服务器的消息到客户端,使用

public
void
onTextMessage(Context
context,
XGPushTextMessage message)方法接受







接下来是服务器端的消息透传

方法名返回值默认值描述getContent()String""消息正文内容,通常只需要下发本字段即可getCustomContent()String""消息自定义key-valuegetTitle()String""消息标题(注意:从前台下发消息命令字中的描述不属于标题)

 
0 0
原创粉丝点击