e-works数字化企业网  »  文章频道  »  基础信息化  »  移动应用

基于PhoneGap的跨平台移动应用开发研究

2017/8/7    来源:北华航天工业学院    作者:王健  杨丽娟      
关键字:PhoneGap  移动应用  
本文介绍了常用的四种移动应用开发方法,包括原生应用、移动Web应用、PhoneGap和Titanium框架,并 从开发难易程度、可用平台、应用外观、应用运行速度以及使用智能终端的硬件功能等方面对四种开发方法进行了比较。最终选择了PhoneGap框架开发了一个跨平台的移动应用程序:海关EMS订单查询应用。经测试,该应用能兼容常见的移动平台,且运行速度快,用户交互流畅。
    0引言
    
    随着智能手机等智能终端越来越普及,以及移动互联Wifi的广泛分布,层出不穷的移动应用给人们工作和生活带来了众多的便利。然而移动操作系统版本众多,主流的包括谷歌的Android、诺基亚的Symbian、苹果的iOS, RIM的Blackberry和微软的Windows Phone。
    
    各个操作系统互不兼容,导致软件开发人员必须为同一个App开发出不同的平台版本。为了提高开发效率,减少软件开发人员的工作量,已经出现了许多跨平台移动开发方法,使得软件开发人员可以一次开发而在多个平台使用的移动应用。跨平台开发方法已经成为了移动开发的趋势。
 
    1跨平台开发技术简介
    
    当前的移动端App分为三种,分别是原生应用、移动Web应用程序和混合应用程序。
    
    原生应用指的是能直接运行于当前操作系统的应用程序。原生应用的开发和运行都是和平台紧密相关的。软件开发人员在开发原生应用时必须根据不同的移动平台选择不同的开发工具和框架。
 
    移动Web应用指需在浏览器中运行的网页应用。移动Web应用利用移动平台良好的浏览器支持和Web技术的标准化,将应用程序以Web页面的形式呈献给用户。为了适应智能终端不同的屏幕尺寸,开发人员必须要为Web应用做一些优化处理。借助于一些前端框架可以使最终的Web应用在所有平台上以非常类似的方式展示出来,目前流行的前端框架有jQuery Mobile和Sencha Toucho但是移动Web应用通常不能使用智能终端的硬件功能,例如摄像头、GPS传感器等。而且,不论是外观上还是交互行为上移动Web应用都不同于原生应用,而更像是一个普通的网页。
    
    混合应用则是原生应用和移动Web应用的结合,通常是一个原生应用内嵌了浏览器。混合应用既可以利用Web开发技术又可以利用智能终端的各种硬件设备。开源框架PhoneGap可以帮助程序员快速开发跨平台的混合应用,在开发便捷的同时,也使应用程序在性能上更接近原生应用。使用PhoneGap框架,开发人员可以继续使用Web技术开发应用程序,同时,PhoneGap还提供了一组JavaScript API用来使用智能终端的各种硬件功能,
 
    包括摄像头、GPS定位、加速器、本地联系人等。混合应用程序不直接运行在浏览器中,而是通过PhoneGap引擎根据不同的运行平台分别包装后,用户可以像安装原生应用一样安装混合应用。
    
    另一个用来开发混合应用的框架是TitaniumM obile,和PhoneGap不同,该框架不使用HTML和CSS来创建用户界面,而是完全通过编程来实现用户界面。开发人员使用JavaScript来创建接口并实现逻辑和数据操作,并使用Titanium API进行扩展,最后的代码也需要使用Titanium引擎进行包装。
 
    2跨平台开发技术比较
    
    原生应用的开发针对于不同的移动平台需要独立开发。使用移动终端的硬件功能也不受任何限制。外观上使用平台的原生UI元素,程序运行的速度快,用户交互也很流畅。
    
    所有的智能手机平台都有自己内置的浏览器,虽然浏览器多种多样,但绝大多数浏览器都是使用WebKit库实现的,所以移动Web应用在大多数平台都能兼容。由于JavaScript不允许使用任何手机硬件功能,所以移动Web应用对终端的硬件功能使用不理想,但HTMLS提供的本地存储技术,可以实现应用程序的音视频播放和多点触摸手势功能。移动Web应用不能使用原生的UI元素,应用程序的设计和布局都使用CSS来完成。由于移动Web
 
    应用需要通过网络加载,所以处理速度上稍慢。
 
    Titanium目前仅支持iOS,Android和Blackber-ry平台。Titanium应用可以方便的使用移动终端的硬件功能,如加速计、GPS等。外观上,由于Titanium使用原生UI元素来创建用户界面,所以应用程序看起来和原生应用没什么区别。程序运行过程中,如果需要处理大量的对象和视图元素时,速度会稍慢。
    
    PhoneGap支持7个移动平台,包括主流的iOS,Android, Windows Phone, Symbian等,仅次于移动Web应用。PhoneGap可以方便的使用移动终端的硬件功能。外观上PhoneGap不使用原生UI元素,而是使用CSS来模仿原生界面,所以看起来更类似于移动Web应用。应用的处理速度上,使用PhoneGap开发的应用速度快,用户交互也很流畅[6]0
 
    3使用PhoneGap开发
    
    经过对四种开发技术的比较,最终选择了PhoneGap框架,并开发了一款跨平台的移动海关EMS订单查询应用。该应用的用户分为两种:管理员和普通用户。
 
    1)普通用户的功能结构图如图1所示:
 
基于PhoneGap的跨平台移动应用开发研究
 
    (1)上传excel格式的订单导人订单数据,上传的excel需要使用固定的模板,该模板可以从系统下载使用。
    
    (2)订单查询。普通用户可以通过两种方式查询已经上传的订单,一种是通过选择上传日期时间段来查询,另一种是使用主单号进行查询。每个上传的excel包含一个主单号。
    
    (3)配货单查询。普通用户可以通过点击主单号查询该主单号下的所有配货单信息。
    
    (4)修改密码。普通用户可以修改其账户密码。
    
    2)管理员用户的功能结构图如图2所示:
 
基于PhoneGap的跨平台移动应用开发研究
 
    (1)上传excel格式的订单导人订单数据,上传的excel需要使用固定的模板,该模板可以从系统下载使用。
    
    (2)订单查询。管理员用户可以通过两种方式查询已经上传的订单,一种是通过选择上传日期时间段来查询,另一种是使用主单号进行查询。每个上传的excel包含一个主单号。
    
    (3)主单号删除。管理员用户可以删除主单信息,相应的该主单号下的配货单信息也一并删除。
    
    (4)配货单查询。管理员用户可以通过点击主单号查询该主单号下的所有配货单信息。
    
    (5)配货单批量删除。管理员用户可以批量删除配货单信息。
    
    (6)修改密码。管理员用户可以修改其账户密码。
 
    (7)账号管理。管理员用户可以添加或者删除账号。
 
    4结语
    
    经测试,该应用能兼容常见的移动平台,且运行速度快,用户交互流畅。
 
责任编辑:李欢
本文为授权转载文章,任何人未经原授权方同意,不得复制、转载、摘编等任何方式进行使用,e-works不承担由此而产生的任何法律责任! 如有异议请及时告之,以便进行及时处理。联系方式:editor@e-works.net.cn tel:027-87592219/20/21。
e-works
官方微信
掌上
信息化
编辑推荐
新闻推荐
博客推荐
视频推荐