下载安卓APP箭头
箭头给我发消息

客服QQ:3315713922

在Android socket编程中如何实现消息推送(一)

作者:课课家教育     来源: http://www.kokojia.com点击数:723发布时间: 2016-04-12 14:55:18

标签: androidjava推送消息socket编程

  在现代科技的迅速发展下,网络信息的发送与接收都是我们常见的一种模式,但是在使用的过程中,很多人都没有细心考虑过是怎样才能实现信息的发送与接收,那么本文简单介绍一下在Android socket编程中实现消息推送的相关知识。

 

  主要实现了:一台手机向另外一台手机发送消息,这两台手机可以随时自由发送文本消息进行通信,类似我们常用的QQ。

  效果图:

在Android socket编程中如何实现消息推送_android_java推送消息_socket编程_课课家

  原理:手机通过socket发送消息到服务器,服务器每接收到一条消息之后,都会把这条消息放进一个messageList里面,服务器会不停地检测messageList是否含有消息,如果有的话就会根据messageList里面item的数据,推送到相应的另一端手机上面。

  下面简单画了一个图来说明这个原理:

  演示:手机客户端client1发送消息msg1到手机客户端client2,client2收到消息后回复msg2给client1

  1.手机客户端client1发送一条“msg1”的文本消息到服务器;

  2.服务器收到来自client1的“msg1”消息后,把它add进messageList里面;

  3.服务器检测到messageList里面含有消息(开启服务器时就新建里一个检测messageList的线程,线程里面有一个死循环,用于不停检测messageList是否含有消息);

  4.服务器读取消息数据,如读取到来自client1发给client2的消息“msg1”,那么服务器就把“msg1”推送到client2上;

  5.client2检测到服务器推送的消息,做出相应的操作(如:震动、铃声、显示消息等);

  6.client2接收到来自服务器推送的“msg1”消息后,client2也回复一条文本消息“msg2”给client1,此过程和client1发送消息给client2一样。

  7.最后,client2就可以显示来自client1发送的消息“msg1”,而client1则可以显示来自client2的回复消息“msg2”

  以上主要介绍了实现消息推送的原理,还有给出一些信息推送的效果图,要实现信息推送这个过程还要关注我们后续的文章。

赞(24)
踩(1)
分享到:
华为认证网络工程师 HCIE直播课视频教程