Android平台消息推送服务的实现

上传人:飞*** 文档编号:24753199 上传时间:2017-12-07 格式:DOCX 页数:3 大小:126.75KB
返回 下载 相关 举报
Android平台消息推送服务的实现_第1页
第1页 / 共3页
Android平台消息推送服务的实现_第2页
第2页 / 共3页
Android平台消息推送服务的实现_第3页
第3页 / 共3页
亲,该文档总共3页,全部预览完了,如果喜欢就下载吧!
资源描述

《Android平台消息推送服务的实现》由会员分享,可在线阅读,更多相关《Android平台消息推送服务的实现(3页珍藏版)》请在金锄头文库上搜索。

1、2014.18黄河清,陈文( 福州职业技术学院计算机系,福州 350108)摘 要 : 分 析 了 Android 消 息 推 送 服 务 的 基 本 原 理 , 阐 述 了 消 息 推 送 服 务 的 解 决 方 案 , 结 合 商 场 广 告 消 息 推 送 系 统的开发,明确了 Android 平台下消息推 送 服务的开发步骤,对 Android 平台消息推送服务的应用具有借鉴作用。关 键 词 : Android 平台 ; 消息推 送 ; 商场广告Android Platform Push Messaging Service ImplementationHUANG He-qing ,CH

2、EN Wen( Department of Computer , Fuzhou Polytechnic Collage , Fuzhou 350108 , China)Abstract: Analysis of the ba sic principles of Android message push service, elaborated message push service solutions, combined with the development of shopping advertising message push system, A clear message push

3、services development steps under Android platform, To be a reference for Android platform messaging push service application.Key words: Android platform ; message push ; shopping advertising1 引言移 动 互 联 网 时 代 初 期 , 当 需 要 通 知 手 机 用 户 一 些 事 情 时 , 使 用 的 方 法 是 弹 出 一 个 窗 口 , 来 提 示 用 户 正 在 发 生 什 么 事 情 , 这

4、些 提 示 可 能 是 用 户 有 未 接 电 话 , 或 者 是 一 些 日 历 提 醒 、 一 封 新 的 彩 信 等 。 随 着 社 会 的 进 步 和 科 学 技 术 的 发 展 , 消 息 推 送 被 应 用 在 了 传 送 信 息 的 领 域 。 消 息 推 送 , 就 是 在 互 联 网 上 通 过 定 期 传 送 用 户 需 要 的 信 息 来 减 少 信 息 过 载 的 一 项 技 术 。 推 送 技 术 通 过 主 动 推 送 信 息 给 用 户 的 方 式 减 少 了 用 户 用 于 在 网 络 上 搜 索 的 时 间 。 它 针 对 用 户 比 较 感 兴 趣 的 主

5、题 , 通 过 过 滤 和 搜 索 相 关 主 题 信 息 , 定 期 推 送 给 用 户 , 来 辅 助 用 户 挖 掘 有 价 值 的 信 息 。2 消息推送的基本原理与解决方案在 开 发 移 动 应 用 时 , 当 有 数 据 需 要 与 服 务 器 进 行 交 互 时 , 一 般 情 况 下 , 移 动 客 户 端 会 主 动 与 服 务 器 请 求 连 接 , 服 务 器 收 到 请 求 后 , 会 返 回 数 据 给 移 动 客 户 端 , 但 是 这 样 的 交 互 方 式 就 存 在 一 个 问 题 , 当 服 务 器 端 有 数 据 更 新 或 需 要 发 送 一 些 消 息

6、 给 移 动 客 户 端 时 , 只 能 等 待 客 户 端 有 连 接 的 时 候 才 能 实 现 , 这 样 就 会 让 消 息 少 了 实 时 性 。2.1 消息推送的基本原理移 动 客 户 端 能 实 时 收 到 服 务 器 消 息 和 通 知 , 一 般 有 两 种 方 法 , 第 一 种 是 移 动 客 户 端 使 用 拉 ( Pull) 的 方 式 , 这 种 Pull的 方 式 主 要 是 通 过 隔 一 段 时 间 连 接 一 下 服 务 器 , 获 取 最 新 的服 务 , 则 可 一 次 发 送 给 许 多 客 户 端 , 相 对 Pull 方 式 不 用 客 户端 程

7、序 不 停 监 测 服 务 端 的 变 化 。2.2 解决方案实现原理( 1) 轮 询 (Pull) 方 式 : 客 户 端 定 时 向 服 务 器 提 出 连 接 请 求 , 当 服 务 器 端 有 新 消 息 时 立 即 同 步 消 息 。( 2) SMS (Push) 方 式 : 通 过 拦 截 SMS 消 息 并 且 解 析 消 息 内 容 来 了 解 服 务 器 的 命 令 , 但 这 种 方 式 一 般 用 户 在 经 济 上 很 难 承 受 。( 3) 持 久 连 接 (Push) 方 式 : 客 户 端 和 服 务 器 之 间 建 立 长 久 连 接 , 这 样 就 可 以 实

8、 现 消 息 的 及 时 性 和 实 时 性 。2.3 消息推送解决方案2.3.1 GCM 云推送消息服务Google Cloud Messaging for Android 是 谷 歌 新 推 出 的 云 推 送 消 息 服 务 , 简 称 GCM。 之 前 这 个 服 务 叫 C2DM, 该 服 务 可 帮 助 人 们 将 数 据 从 服 务 端 发 送 至 应 用 。 GCM 不 提 供 任 何 内 置 的 用 户 界 面 或 其 他 消 息 数 据 的 处 理 。 GCM 可 以 直 接 通 过 An-droid 应 用 程 序 完 全 控 制 如 何 处 理 收 到 的 原 始 消

9、息 数 据 。 但 是这 个 方 案 需 要 连 接 Google 的 服 务 器 , 而 对 于 国 内 的 网 络 , 这个 服 务 经 常 不 好 用 。2.3.2 MQTT 协议实现 Android 推送MQTT ( Message Queuing Telemetry Transport, 消 息 队 列 遥 测 传 输 ) 是 IBM 开 发 的 一 个 即 时 通 信 协 议 。 它 使 用 发 布 /订 阅 消 息 模 式 , 提 供 一 对 多 的 消 息 发 布 , 解 除 应 用 程 序 耦 合 , 国信 息 。 另 一 种 就 是 由 服 务 器 主 动 发 起 的 ,

10、称 之 为 推 送 ( Push)的 方 式 , 这 种 方 式 是 当 服 务 器 有 新 信 息 了 , 就 把 最 新 的 信 息 推 送 到 移 动 客 户 端 上 , 让 客 户 端 接 收 到 最 新 的 服 务 器 信 息 。 显 然 这 两 种 方 式 都 能 从 服 务 器 获 取 最 新 的 信 息 , 但 是 各 有 一 定 的 优 点 , Pull 的 方 式 是 客 户 端 主 动 , 不 会 让 用 户 收 到 太 多 “垃 圾 ” 信 息 , 但 是 这 种 方 法 比 较 费 网 络 流 量 和 移 动 终 端 的 电 量 ; 而 Push 方 式 则 是 服

11、务 器 端 为 主 动 , 只 要 客 户 端 开 启 推 送 基金项目 : 福 州 职 业 技 术 学 院 工 学 结 合 项 目 : Android 手 机 软件 开 发 。作 者 简 介 : 黄 河 清 ( 1977- ) , 男 , 副 教 授 , 研 究 方 向 : 嵌 入式 系 统 、 Android 开 发 ; 陈 文 , 副 教 授 。收稿日期:2014-05-16532014. 18电脑编程技巧与维护内 很 多 企 业 都 广 泛 使 用 MQTT 作 为 Android 手 机 客 户 端 与 服 务 器 端 推 送 消 息 的 协 议 。 其 中 Sohu, Cmstop

12、 手 机 客 户 端 中 均 有 使 用 到 MQTT 作 为 消 息 推 送 消 息 。2.3.3 XMPP 协议实现 Android 推送XMPP 协 议 主 要 用 于 可 用 于 服 务 类 实 时 通 信 、 表 示 和 需 求 响 应 服 务 中 的 XML 数 据 元 流 式 传 输 。 XMPP 以 Jabber 协 议 为 基 础 , 而 Jabber 是 即 时 通 信 中 常 用 的 开 放 式 协 议 。 XMPP 用 于! = location.getLongitude ()lastLatitude = location.getLatitude () ;lastLon

13、gitude = location.getLongitude () ;Log.i (getClass () .getName () , location change ! sent to server) ;sendLocationToServer (location, new Runnable () public void run () Log.i (getClass () .getName () , try get msg from server .) ;getMsgFromServer () ;) ; ;LocationUtils.getInstance ( ) .registerLoca

14、tionListener ( bdLocationListener)3.2 API 接口设计API 接 口 的 主 要 设 计 的 功 能 是 从 客 户 端 接 收 定 位 的 坐 标 信 息 , 然 后 从 数 据 库 获 取 该 坐 标 信 息 下 是 否 有 新 的 消 息 存 在 , 如 果 有 , 则 将 新 消 息 推 送 给 客 户 端 。 代 码 如 下 :query ($sql) ;if ( $row = $re-fetch_array () ) $client_latitude = $row 0 ;$client_longitude = $row 1 ;$conn -query ( lock table message write ,msg_queue write, msg_queue as mq write, message as m write, msg_queue as mq2 write;) ;/ search live message$sql = select mq.*,m.body,m.latitude_min,latitude_max,longitude_min,longitude_ma

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号