4.7.2测试用例35
4.8本章小结.36
结论37
致谢38
参考文献39
1 1 1 1 绪论 1.1 1.1 1.1 1.1 选题背景 选题背景 选题背景 选题背景 近几年随着 智能手机 和 3G 移动网络 的迅速发展,使手机的功能不 在 局限于 打电话,通过智能手机搭载的丰富应用程序,可以聊天、找朋友、分享照片 , 也 可以将手机当作 GPS 导航系统指引行车方向,甚至可以让手机充当电子钱包 [1] 。 智能手机已经成为人们日常生活中不可缺少的一部分。 目前,最流行的智能手机的操作系统有两种: Android 和 iOS 。而 Androi d 操作系统凭借其源代码免费开放 、 友好的人机交互界面 、 强大的系统功能等脱颖 而出 。 众多基于 Android 系统的应用程序层出不穷 , 极大的改善了人们的生活质 量。 当今环境污染 , 食品安全问题日益严重 , 病人数量逐年增加 , 需要的照顾也 越来越多 , 但医院医疗资源有限 。 如果有一个基于 Android 的应用程序可以实时 的让病人与医护人员进行沟通交流 , 病人 特别是慢性病人 就可以不在医院也可以 与医生保持联系 , 告知病情 。 如果发生突发情况还可以发送紧急消息 , 通知 医院 出事地点 , 以便得到及时治疗 。 由于此类消息的紧急性 , 应用程序必须保证快速 、 实时到达。 推送 (push) 技术是指如果有发给用户的消息,服务器主动把消息推送给用 户。不同于拉 (pull) 方式,用户不必自己定时询问服务器是否有自己的消息 。 推 送技术不仅可以使用户实时获得消息,而且有效的减少 Android 手机的电量 、 流 量的损耗 , 提高程序的适用性 。 研究 Android 消息推送技术 , 对于实现病人与医 护人员之间实时消息的传递具有非常重要的意义 , 也是未来 Android 消息传递技 术的发展趋势。
1.2 1.2 1.2 1.2 国内外研究现状 国内外研究现状 国内外研究现状 国内外研究现状 由于推送 ( push ) 技术在 Android 手机上对电量 、 流量的损耗低 , 实时接收 消息等优点 , 推送技术得到广泛的应用 。 目前推送 ( push ) 技术主要应用于实时通信领域,在 Android 平台下的应用有手机 QQ 、人人、微信、 GTalk 等。 实现推送技术,一般有以下几种方法: ( 1 )轮询方式 这种方法需要客户端来做一个定时或者周期性的访问服务器端接口 , 以获得 最新的消息 。 轮询的频率太慢可能导致某些消息的延迟 , 太快则会大量消耗 流量 和电池 。 当用户量多的时候 , 将大大增加服务器的压力 。 严格意义上来说 , 轮询 方式并不是推送 。 之所以称之为推送 , 源]自=751-^论-文"网·www.751com.cn/ 是因为用户量少的时候 , 在用户的体验上 , 感觉消息是实时的。 ( 2 ) SMS 方式 通过 传统短信 SMS ( Short Messaging Service )进行服务器端和客户端的 交流通信 。 服务器端利用 SMS 可以将纯文本信息推送到手机客户端 。 Android 手 机客户端可以拦截解析 SMS 信息 , 收到特定消息之后再向服务器发出请求 , 服务 器再返回消息, 这样就达到了推送目的。但是实时通信一般消息短、多频次 , 采 用此方式难以避免成本过高问题。 ( 3 )长连接方式 手机要连接 Internet ,就需要通过运营商的网关做一个网络地址转换 (Network Address Translation , NAT) 。因为 IPv4 的 IP 量有限,运营商分配 给手机终端的 IP 是运营商内网的 IP ,简单的说运营商的网关需要维护一个外 网 IP 、 端口到内网 IP 、 端口的对应关系 , 以确保内网的手机可以跟 Internet 的 服务器通讯 ,假如手机在一段时间内没有数据交流,运营商会删除手机在 NA T 表中的表项,使手机客户端失去与服务器的连接。 长连接方式指手机客户端与服务器保持一个持久的长连接,保持链路不断 , 是一种常见的实现 推送方式 [2] 。 这 种方式 可以解决由轮询带来的性能问题 , 减少 手机电池 、流量的 消耗。 如谷歌的 C2DM ( Cloud to Device Messaging )和 极光 推送 [3] 都是采用这种方式来实现消息的推送。