您的当前位置:首页正文

Android智能手机的云服务应用研究

2020-07-15 来源:钮旅网
Android智能手机的云服务应用研究 江燕良。黄海于 (西南交通大学信息科学与技术学院,成都610031) 摘要:云计算的应用目标并不仅局限于PC,随着移动互联网的蓬勃发展,基于手机等移动终端的云服务已成为IT行业 炙手可热的新业务发展模式。本文基于Openmobster搭建移动云计算环境,并利用Android智能手机作为终端来访问 云端服务器资源,以数据传输的事务处理为应用背景,采用c/s模式和B/S模式相结合的方式,建立了云服务下移动智 能终端信息采集和处理的基础架构,并根据此架构初步实现了追踪定位的功能。该方法通过无线网络连接,利用服务器 端与手机客户端的即时通信,实现了为Android智能手机提供云推送和云同步的服务。 关键词:云服务;Openmobster;Android;追踪定位 中图分类号:TP393 文献标识码:A Cloud Computing Application Research Based on Android Smart Phone Jiang Yanliang,Huang Haiyu (School of Information Science&Technology,Southwest Jiaotong University,Chengdu 610031,China) Abstract:The goal of cloud computing applications are not limited tO personal computer(PC).Cloud computing based on mobile termi— nals such as cell phones has become a hot development model in IT industry with fast development of mobile internet.Based on Open— mobster,this paper built mobile cloud computing environment,and used Android smart phones to access the clouds as terminal server resources,relying on data transmission of the transaction for the application background,using c/s mode and g/s mode combination method,established the eloud service mobile intelligent terminal information acquisition and processing of infrastructure,and according tO the framework preliminarily realized the function of tracking location.Through the wireless network connection,the use of server and mobile client instant communication,this method realized cloud push and cloud synchronization service for Android intelligent mobile phone. Key words:cloud computing;Openmobster;Android;tracking location 而弱化对移动终端设备的处理要求 ]。 引 言 随着数字化和互联网的飞速发展,特别是web2.0 Android系统是Google公司最新推出的移动设备软 件平台,与其他Symbian、Windows Mobile手机操作系统 相比,其源代码完全开放,任何人和机构都可以免费使用。 Android系统具有强大的应用层API和丰富的传感器接 技术的发展,互联网上的数据量呈现高速增长的态势,导 致互联网数据处理能力相对不足;同时互联网上存在着大 量处于闲置状态的计算设备和存储资源,如果将其聚合起 来统一调度和提供服务,则可以大大提高利用率,让更多 的用户从中受益。云计算就是基于这种考虑,通过虚拟化 入功能,其开放的平台有利于开发者开发出各类应用软 件,是一个真正意义上的开放性移动设备综合平台,基于 Android系统的研发己经成为热门的方向 ]。 技术将资源进行整合,形成庞大的计算与存储网络,从而 更好地为用户服务n]。随着移动终端的普及,将移动终端 和云计算相结合形成移动云计算,可以很好地满足用户随 时随地的资源访问和事务处理的需求,同时也可以解决移 动终端在资源上不足的问题。移动云计算的概念,就是利 用云计算技术来解决移动终端的存储和数据处理等问题, 针对当前老年人或儿童出现迷路或走失等危机情况 的应急处理等应用需求,本文提出了一种云服务下基于 Android移动智能终端信息采集和处理的基础架构 该 架构基于手机云计算平台Openmobster,将其部署在PC 上作为服务器,利用周围的无线网络资源,使其与An— droid手机客户端建立即时通信,根据平台自身的推送和 同步机制,实现数据的上传和下发。该架构使云计算真正 的“落地”,实实在在地为手机提供服务。 帮助用户摆脱硬件设备、存储设备、应用程序等条件的限 制,将移动终端应用的“计算”从终端转移到服务器端,从 敬请登录网站在线投稿 2013#-g 9期 《平旁机 嵌入jl:条碗应同》 化。该平台是一个向本地手机程序提供“云”服务的平台, 1 总体设计 1.1 总体拓扑结构 由于设计采用的测试环境是由无线路由器搭建的无 线网络环境,考虑到网络覆盖范围的局限性,当用户从一 它内嵌了一个基于J2EE的开放源代码的应用服务器 JBoss。在JBoss服务器启动后,可以通过PC的浏览器启 动控制台。JBoss的控制台是个界面简陋的控制台,和其 他商业化服务器的控制台差,Nql ̄大,一点都不直观。因此 考虑将控制台改造成网页的形式,这样既方便用户操作, 而且界面也更直观。 个网络区域移动到另一个网络区域时,数据的交互会发生 中断,因此在不同的网络区域都搭建Openmobster云服务 器,即使手机跟之前的服务器连接发生了中断,只需跟当 前的服务器重新建立连接,数据便从中断处继续上传到当 前的服务器,最后只需把这些不同服务器端数据库的数据 为了在该平台的服务器跟手机终端之间实现通信,需 要在JBoss控制台程序中新增一条命令,相应地在服务器 端也要新增处理这个命令的代码,用控制台发命令,让服 务器发Push消息给手机上的Service。服务器端的总体 设计流程主要分为以下几步: 汇总到一个统一的数据库,需要时还可以下载到手机端查 阅。总体拓扑结构图如图1所示。 ①对控制台代码进行分析,找出控制台的命令与类 的对应关系。 ②新增一个命令类,并且修改配置文件,使控制台可 以运行新命令请求。 ③在服务器端也新增了一个对应控制台新命令请求 的类,继承自MobileServieeBean,放在服务器端处理新增 的命令请求。 图1 总体拓扑结构 ④在服务器端建立一条Push通道。当新增的命令 请求类在收到命令时就会通过这个Push通道向手机上的 Service发Push消息。 ⑤将控制台改造成网页的形式来下发命令请求。 ⑥手机客户端处理完命令请求,将处理结果封装上 传到服务器端的数据库。 1.2 总体架构 本文设计的基于Android平台开发云应用的基础框 架包含以下几个主要部分:Mysql数据库服务器、Open— mobster云平台、web网页服务器、Android手机客户端和 无线网络。本设计采用了c/s模式和B/S模式相结合的 方式,服务器主要采用Openmobster手机云平台内嵌的 JBoss服务器,并将其与Mysql数据库和web网页连接起 来;客户端采用安装了云平台客户端的Android智能手 3客户端设计 客户端的设计包括手机即时通信客户端和Web即时 通信客户端。 Web即时通信客户端基于JavaEE,利用Openmob- 机。云服务器端和手机客户端根据云平台自身的网络通 信机制,利用周围 的无线网络资源, 数据库 JBossN务器 Web阏页 建立即时通信。然 后通过Web网页 国一0一 无线路由器 ster云平台的JBoss服务器对JSP网页文件进行热部署, 通过登录到即时通信服务器端与手机客户端进行通信。 在移动互联网中,Android智能终端通过WiFi或者 GPRS连接到互联网 ]。手机即时通信客户端通过激活手 机设备连接到服务器,然后以Java bean的传输协议形式, 对协议进行解析并执行相应的命令操作,最后再将处理的 下发数据请求命 令,用户的手机客 户端接收并解析命 令请求,将数据上 传到服务器端的数 端 结果封装成bean的对象在客户端与服务器之间进行传输。 据库。总体架构图 如图2所示。 图2总体架构图 4数据库设计 通常情况下用户将自己的数据信息上传到数据库,其 他用户通过登录数据库的方式来共享数据信息。针对大 2服务器端设计 服务器端采用开源的Openmobster手机云平台来搭 文件的管理与共享,为了提高上传和下载的效率,避免大 文件上传或下载失败时将整个文件重新上传或下载,实现 了对文件的分割以及文件的合并操作。 建即时通信服务器,并根据系统的需要进行了改进和优 6 Microcontrollers&Embedded Systems 20 13年第9期 WwW.mesnet.corn.cn (1)文件分块 将一个较大的文件上传到数据库时,上传速度往往会 受到网络宽带的影响。针对较大文件的保存与管理,对文 输入用 户名 和密码 并下 发命令 不 △ . 一一 U断账 目. 件进行分块,根据网络的带宽设置文件块的大小。 (2)分块文件上传 提示重 === 蔟 文件分块上传的时候,遍历要上传的文件所在的路 径,当查找到要上传的文件时,根据文件分块的大小,计算 文件分割的块数和最后一个文件块的大小,从第一个文件 块开始上传。当文件在上传的过程中由于网络或者其他 原因,使得服务器数据库与客户端的连接断开,导致文件 △ 法 封装下发的 对封装对 命令字段一 象进行定 期检查 一 解析命令 并执行 将操作结 显示返 连接数据库 一服务器 回结果 果上传到 令操作完成 一)读 .、数 据 写 和 上传中断,在客户端与服务器端数据库重新建立连接后, 需要续传文件,这时就要通过上次上传过程中记录的文件 路径和名称以及相应的文件块编号,找到上次上传文件的 断点。续传文件时,依然要遍历文件所在的路径,通过文 图3追踪定位功能处理流程图 发生更新,并将更新的数据对象推送给手机客户端,手机 客户端接收并解析该对象,执行相应的指令操作。其次, 对指令操作的结果进行封装并分块,然后将其上传到服务 器端的数据库。最后,将这些分块的数据包下载并合并, 件路径和名称找到对应的文件,再使用文件块的编号和文 件块的大小获取下一次文件要上传的位置。 (3)分块文件下载 下载的时候根据相关的查询条件,使用sql语句,根据 提供给用户。定位追踪功能的实现流程如图4所示。 ①用户通过浏览器 打开网页,选择需要下发 开始 文件编号、文件路径、文件名称、文件块编号以及文件块是 否已经下载等标志查找符合条件的记录。当文件在下载的 过程中由于网络或者其他原因,使得服务器数据库与客户 端的连接断开,导致文件下载中断,在客户端与服务器端数 据库重新建立连接后,需要继续下载文件,查询条件不变, 确保搜查出来的记录是相同的,根据上次下载过程中标记 的文件路径和名称以及相应的文件块编号,找到相应断点。 将对应的记录继续下载,直到所有的记录下载完成。 (4】分块文件合并 的命令,然后输入用户名 用户登录 和密码,点击“确定”后调 起JSP代码。JSP代码将 网页请求封装的各功能选 项字段取出,封装进一个 数据对象中。 ± 手机客户端被成功激活 ②在服务器端定义 的用于下发的Channel会 建立通信连接,监听指令下发 文件的合并是文件合并下载过程中的一部分,即每次 下载某条记录中的文件内容时,先判断该文件块属于哪个 文件。用户根据文件名称、文件路径等信息查找自己需要 的文件,如果存在符合条件的记录,就依次访问这些记录, 并将每条记录中的文件内容读取出来,写入相应的文件 中。所有记录被访问完的同时,所有的文件分块都被写到 了相应文件中,即不会出现文件内容的覆盖问题,也不会 额外的占用存储空间。 定期调用相关接口对上面 的封装数据对象进行检 查,一旦发现有新插入的 Y 执行定位指令并截图 将返回的结果进行封装 和拆分并上传至服务器 数据,会通过对应的接口 取出该数据,将其封装到 bean对象中,通过Open— mobster推送给手机终端。 图4定位追踪功能实现流程图 5追踪定位功能的实现 老年人或小孩遇到迷路或走失等危急情况时,通过远 程控制的方式,向老人或小孩的手机发送指令,定位手机 ③终端这边后台模块中的服务同样建立了对应云端 Channel的处理,一旦收到Channel的下发通知,通过发送 Intent的方式启动一个Activi@ ,这个Activity在启动过程 中可以通过bean的相关接口读出对应用户名和通道下发 的bean对象,通过bean的一些方法解析并获取下发通知 当前的位置并显示在地图上,然后将位置信息截图并上传 到服务器上,用户便可以从服务器数据库获取老人或小孩 的位置信息,帮助他们脱离危险。该功能的设计处理流程 如图3所示。 中的各功能项数据字段,调用Android平台提供的各接口, 完成对手机的远程控制功能。 ④将远程控制处理的结果封装到一个新的bean对 该功能的实现首先通过服务器端网页下发控制指令 并封装,然后服务器端的相应接口定时检测数据对象是否 象里,然后注册一个用于上传的Channel,对数据包m 敬请登录网站在线投稿 2013#-g 9期 《羊砖机 嵌入式彖碗应冈》 7 

因篇幅问题不能全部显示,请点此查看更多更全内容