APP下载

一种基于B/S结构的PC应用转换为Android应用的方法

2018-09-26周绍景应杰潘宏斌杨正元黄建

数字技术与应用 2018年5期

周绍景 应杰 潘宏斌 杨正元 黄建

摘要:随着智能终端的普及,如何高效、低成本的将基于B/S结构的PC应用转换为Android应用成了当前最主要的问题。通过使用WebView组件转换应用并对转换后的应用进行测试分析,结果表明该方法能够高效、低成本的完成应用的转换。

关键词:B/S结构;WebView组件;Android应用

中图分类号:TP311.1 文献标识码:A 文章编号:1007-9416(2018)05-0053-01

随着移动应用的发展,移动终端的拥有者不断的增长,GSMA在《移动经济2017》中指出,亚太地区独立移动用户已经增长至31亿,达到全球增幅的66.6%,使得全球的消费者消费行为也发生了显著的变化。互联网企业为了抓住移动互联网所带来的契机,着手对基于B/S结构开发的PC应用(下称PC应用)进行转换,使企业应用能登上移动终端的舞台继而增加企业在市场的竞争力。寻找一个高效、低成本的转换方法成了如今迫切需要解决的难题。本文对PC应用进行概述,然后提出转换方法,最后对其进行分析。

1 PC应用概述

PC应用是将传统C/S结构的业务逻辑层和视图层进行分离所形成的。PC应用将应用程序分为表示层、应用逻辑层和数据连接层三个层次,表示层向服务器发送用户请求以及对用户进行视图展示;应用逻辑层接受用户请求并进行相关的业务逻辑处理;数据连接层与应用逻辑层进行数据交互[1]。

PC应用通过浏览器发起HTTP请求,服务器接收到请求后进行业务逻辑处理,当业务逻辑涉及数据交互时,应用服务器将与数据库服务器交互, PC应用程序工作原理如图1所示。PC应用可以进行服务器的横向扩展减缓服务器压力,使用浏览器作为通用的客户端,在进行应用升级和维护时,只需对服务器进行相关操作实现了客户端的零处理[2]。

2 PC应用转换成安卓应用

2.1 PC应用转换成安卓应用的思路

PC应用向安卓应用转换时,只需要对视图层进行转换,因此可以将需要被转换的应用作为Web应用对待。

WebView组件是安卓软件开发工具包中的组件之一,用于浏览本地或远程网页。通过WebView组件在安卓应用中加载显示本地网页,从而实现对复杂网页的封装达成Web应用转换到安卓应用的目的。

2.2 PC应用向安卓应用转换的案例

本文使用IntelliJ IDEA工具将PC应用转换成安卓应用,具体步骤如下:

(1)通过IntelliJ IDEA新建一个安卓项目,将需要转换的Web页面放入assets文件夹中。

(2)在activity视图文件中插入标签取消其内边距属性。

(3)在activity视图相关的java类中实例化WebView组件并将其余activity视图中的WebView标签相关联。

(4)调用WebView中的getSettings().setJavaScriptEnabled()方法支持JavaScript的使用。

(5)对setWebViewClient()方法进行复写,使超链接只能在当前应用中打开。

(6)通过对onKeyDown()方法进行复写,使得用户触摸返回系统按键时不再结束进程而是调用goBack()方法进行页面回退[3]。

(7)还需要在WebView组件的loadURL()方法引入Web页面的首页,当安卓应用进程一经创建便显示Web页面的首界面。

(8)最后避免出现一打开安卓应用便出现Web page not available的错误,还需要在AndroidManifest.xml文件中的manifest标签下进行网络权限的配置。通过添加实现网络权限的申请。

3 转换分析

3.1 转换测试

对各类Web页面进行多次转换实验,该方法都能有效地使封装后形成安卓应用正常运行,因此转换完成后的安卓应用能够投入实际使用。

通过对现有安卓应用进行APK安装包导出,让用户能够下载使用应用。具体方法如下:

通过点击IntelliJ IDEA菜单中的Build->Generate Signed APK在弹出的窗口中对安卓应用的密匙库地址、密码、有效时间等进行设置。选中创建的密匙并键入其密码即可完成安卓应用的APK安装包的导出。

3.2 转换分析

该方法转换形成的安卓应用能够很好的融入布局;在转换时还可以进行二次开发,通过JavaScript、CSS等HTML语言对安卓应用界面进行修饰美化,还能使用JAVA语言对安卓应用的功能进行增强;开发人员只需耗费极少的时间和精力即可完成应用程序的转换,同时应用的升级与维护极其方便;PC应用和安卓应用可以共用同一段源代码,在提升代码复用性的同时降低了维护的成本。

4 结语

阐述了PC应用向安卓应用转换的方法,该方法当对PC应用转换时,无需再次开发或修改源代码达到了减免开发成本和时间的目的。开发者还可以在转换的过程中通過WebView组件对转换后形成的安卓应用视图进行美化,提升用户的体验度。PC应用和转换后形成的安卓应用性能相差无几,但由于WebView组件支持JavaScript的使用,允许应用中的JavaScript代码调用后端代码,给应用程序的安全带来威胁[4]。转换完成后需要对安卓应用进行安全系数提升,完善该缺陷。

参考文献

[1]马驰.基于BS结构的数字媒体资源管理系统的设计与实现[D].辽宁:大连海事大学,2016.

[2]朱坤帅.基于BS架构的业务化空间环境模式集成平台[D].北京:中国科学院国家空间科学中心,2017.

[3]王运生,聂芬.基于WebView组件的Android平台网页封装程序设计[J].智能计算机与应用,2013,3(6):104-106.

[4]赵光泽,李晖,孟杨. Android平台WebView组件安全及应用加固研究[J].信息网络安全,2015,(10):64-65.