标题 | Exmobi移动应用开发技术综述 |
范文 | 俞海 摘要:当前,我国的移动互联网的快速发展,使得移动应用APP呈现爆发式增长。企业不仅要拥有自己的web服务網站,也要考虑各类移动APP的开发,这样才能发挥移动APP的终端营销服务,但面对众多的移动开发平台或中间件技术,要如何面对,如何选择,该文给出一些具体的比较及案例,并介绍南京烽火通信推出的Exmobi移动应用平台开发技术,对开发移动应用的用户有所参考或帮助。 关键词:移动应用APP;iOS;Android;Exmobi;中间件;html5 当前,企业在提高产品线下推送的同时,也要考虑如何在线订购或在线推送,使企业在当下的竞争中处于优势地位,并提供客户相应的在线应用服务,为公司的发展发挥动力,这就离不开手机APP的开发,企业如何进行手机APP平台的选择并投入开发中,要进行相关的开发成本的比较,和老系统的兼容性及开发平台的可扩展性,可持续性以及实施的复杂性等方面进行阐述,为移动APP的开发选择一款适合自己的平台,对企业的IT部门来说,做出明智的正确的选择是一件非常重要的事情,通过各类平台或中间件技术进行比较,并重点介绍Exmobi移动应用开发平台。 1背景介绍 移动应用开发在当前是企业必须要考虑的一件事,传统的零售类企业需要考虑,各类的服务类型的企业也必须面对,由于移动应用开发技术的多样性,在开发移动应用时,要考虑各类企业的背景,技术能力,资金问题,开发问题,部署问题,后期的维护问题,数据的安全性问题等等。 而对于互联网运营的大型软件企业,具有比较强的IT团队,可完全依靠自身技术和人才优势,进行定制开发,并将内容服务,企业核心业务迁移到移动互联网上,进行平台的搭建,在内容的灵活性和业务规则的制定性等上体现出自己的要求和独特性做出正确的选择,颇具意义。从企业的需求出发,本文分析了各种类型的企业,面对繁多的开发技术,如何做出合适的选择。 对于传统行业,如零售/房地产行业等,其IT团队的实际角色往往是支撑,维护和生产运营方面比较内行,而开发能力薄弱,对于这样的企业,由于IT团队的角色能力薄弱,一般依靠采购专业的移动软件APP产品或者移动开发平台或移动中间件,或者外包项目,来完成自身的移动信息化的开发工作。而对于中小规模的软件集成公司或这类企业,由于是专业的软件开发商,为了满足客户要求,开发效率和开发的成本是该类企业主要考虑的因素,从公司的规模和IT开发人员的能力上考虑,可以选择,如能力稍强的,可能内部会积累开发框架或平台,以求提升开发效率和自身的发展。能力稍弱的,可能会通过开源或外购中间件平台,快速构建移动化应用平台。综上所述,对传统非IT企业和小型软件集成公司,对中间件平台有着强烈的需求和开发平台的依赖,而Exmobi作为专业的手机应用软件厂商专注于提供移动应用开发的平台工具或中间件,能有效地降低移动应用的开发难度。 2选择移动信息化实施平台的关键因素 如何选择一个合适的中间件开发软件或移动应用开发平台,对企业的移动信息化实施的成功,尤其重要。移动应用开发的首要使命,就是考虑在各类已经存在的终端环境下,如何选择一款跨平台的开发应用平台,选择到一款满足要求的跨平台的开发平台(iOS、Android、WinPhone等)开发,不仅减少开发工作量,也使开发的周期,开发的成本和开发的效率显著提升。 中间件技术实现跨平台,主要涉及的技术方案体现在两种底层实现技术上: 1)原生开发,通过包装操作系统的原始API,实现跨平台; 2) HTML5技术,通过浏览器引擎实现跨平台; 3)既支持原生开发,又支持HTML5的开发,这样灵活性更好。 以上的1、2或3应用应考虑IT人员的技术优势,在相应的场景(scenarios)以更低的成本和最短的开发周期进行选择,没有绝对的标准那个更好。 中间件平台,底层的跨平台实现技术的特征比较如下: 目前比较流行的几种移动开发平台使用的中间件技术及IDE开发环境的配置/系统的安全性和数据的集成性等方面的比较如图2所示: 通过以上的比较,该文重点介绍一下由烽火通信推出的EXMOBI平台,该平台通过以上的比较,有很好的开发管理功能,有IDE开发工具及数据的安全性考虑,同时也可支持多种类型的数据集成功能。所以以下就重点介绍一下Exmobi平台的特性,并介绍如何利用EXMOBI平台进行手机APP的开发。 3 ExMobi概述 ExMobi是烽火星空公司推出的跨平台移动应用开发中间件产品。ExMobi通过全面的数据集成技术和跨平台展现能力,使业务系统能快速、安全、高效的移植于移动终端,并提供友好的IDE环境、丰富的集成业务,如IT系统对接、云服务等,并可对开发的应用进行打包(含各个操作系统的应用打包)、发布(应用的运行)、管理(日志管理,更新管理)上提供了一整套的解决方案。 ExMobi包含了一系列的技术和产品,主要包括:ExMobi客户端、ExMobi服务端、MBuilder集成开发工具以及ExMobi产品门户。 其中ExMobi客户端负责应用在移动终端的展示和交互,以及与ExMobi服务端的通信。它主要包含:PC模拟器客户端、Android客户端、IOS客户端、Windows8客户端等。 ExMobi客户端实现跨平台的原理,是在不同移动终端上将同样的功能和交互封装成统一的接口,如:XHTML、JavaScript、CSS、主题、Native插件接口等。对于移动应用开发者来说实际上就像WEB开发一样开发一套XHTML的应用即可进行跨平台的数据展现和交互。而能够执行这种特殊应用的引擎我们称为“基座”。所以,对于一个完整的ExMobi客户端应该包含基座和应用。 而为了方便开发调试,ExMobi客户端存在两种状态,一种是基座状态,一种是打包状态。 基座状态主要在开发调试时使用,安装基座客户端的时候,里面是没有应用的。客户端安装好之后,打开基座客户端首先看到的就是基座,在基座的“设置”功能中配置好開发调试环境的IP和端口即可方便的安装和卸载应用,并对应用进行开发调试,而不是像Native原生开发一样每次都要编译,这样调试方便也节省了编译的时间。 打包状态为应用开发完毕后将基座和应用一起打包生成最后发布安装包的状态。打包客户端实际上就是在打开客户端的时候,把基座隐藏起来直接看到应用。打包客户端可以使用ExMobi开发者门户的云打包服务进行在线打包。 3.1 ExMobi组成元素 ExMobi包含了一系列的技术和产品,主要包括:ExMobi客户端、ExMobi服务端、MBuilder集成开发工具以及ExMobi产品门户。 3.2 ExMobi客户端 ExMobi客户端负责应用在移动终端的展示和交互,以及与ExMobi服务端的通信。它主要包含:PC模拟器客户端、Android客户端、IOS客户端、Windows8客户端等。 ExMobi客户端实现跨平台的原理,是在不同移动终端上将同样的功能和交互封装成统一的接口,如:XHTML、JavaScript、CSS、主题、Native插件接口等。对于移动应用开发者来说实际上就像WEB开发一样开发一套XHTML的应用即可进行跨平台的数据展现和交互。而能够执行这种特殊应用的引擎我们称为“基座”。所以,对于一个完整的ExMobi客户端应该包含基座和应用。 而为了方便开发调试,ExMobi客户端存在两种状态,一种是基座状态,一种是打包状态。 基座状态主要在开发调试时使用,安装基座客户端的时候,里面是没有应用的。客户端安装好之后,打开基座客户端首先看到的就是基座,在基座的“设置”功能中配置好开发调试环境的IP和端口即可方便的安装和卸载应用,并对应用进行开发调试,而不是像Native原生开发一样每次都要编译,方便了调试也节省了编译的时间。 打包状态为应用开发完毕后将基座和应用一起打包生成最后发布安装包的状态。打包客户端实际上就是在打开客户端的时候把基座隐藏起来直接看到应用。打包客户端可以使用ExMobi开发者门户的云打包服务进行在线打包。 3.3Exnobi服务端 ExMobi服务端负责对ExMobi客户端请求过来的数据进行处理,并把处理结果响应给客户端进行操作。所以,它主要的功能就是对数据的集成能力。 ExMobi服务端主要包含4大组件:ExMobi管理平台(EMP)、基本核心引擎(BCS)、统一推送引擎(PNS)、统一文档转换引擎(DCS)。 EMP为ExMobi的管理平台,对ExMobi应用和客户端的管理、终端用户使用授权、统计报表展现、其他引擎和服务的管理等。 BCS为数据集成的服务引擎,主要包括:HTTP请求的模拟、Web Service集成、数据库集成、标准接口集成、接口发布等。 PNS为统一推送引擎,实现与BCS的对接,通过UDP/TCPPush、二进制短信push、APNS/C2DM等通道实现应用的统一推送。 DCS是文档转换引擎,可以对标准OFFICE文档、压缩包、图片等格式进行支持。 4利用Exnobi开发及流程概述 利用ExMobi进行手机APP的开发,其开发流程涉及用户的需求分析,利用SQLite数据库创建数据库对象,如表,主键,外键,索引等,通过定义表对象,并把业务数据存放数据库中,同时利用Exmobi支持的Uixml(xml)来描述APP的业务uI,以及相关表单数据,使用form0,selectfl和input button(普通按钮)来设计uI进行数据的选择和页面数据的传递和交互。 对于ExMobi应用插件开发者可使用ExMobi原生UI组件UIXML进行应用开发,UIXML是将原生UI类标签化、场景化为类似HTML语法的一种标记语言,并可以使用CSS进行渲染,而UIXML中可以通过Js调用本地能力,所以使用UIXML进行开发可以像Web一样开发原生App。 对于在ExMobi中使用HTML5进行应用开发的开发者,则使用HTML5、CCS3进行界面展现,而使用ExMobi的本地能力JS类来操作本地能力,达到WebApp的开发效果。流行HT—ML5框架可以任意使用,比如:AgileLite、JqueryMobile、SenchaTouch等技术。 而对于将原生能力集成到ExMobi中的开发者,ExMobi客户端提供丰富的接口API,原生插件开发者可以将更多的原生能力集成到ExMobi中,以补充ExMobi本身能力的不足或者需要定制开发的能力,以满足实际的开发需求。比如:百度地图、支付宝、微信登录、讯飞语音等。 利用ExMobi平台的开发主要步骤简述如下: 1)下载MBuilder MBuilder是ExMobi应用插件的IDE集成开发工具,它可以提升您的开发效率。 2)创建应用插件 MBuilder中提供了多种创建应用插件的方法。开发者可以选择免费版和收费版,也可以选择使用UIXML模板或HT—ML5模板(下载Agile Lite开源框架),甚至可以将自己的模板上传发布后在MBuilder中使用。 3)代码编写 开发者在代码阶段会涉及到一些客户端和服务端代码的编写。客户端主要是uI的布局(使用UIXML、HTML5、原生插件)、CSS的渲染以及JS逻辑的处理,而在服务端可以通过调用封装好的Java类库或者Tag Lib来实现与后端数据的集成、推送调用以及文档转换等丰富的能力。MBuilder中还提供完整和智能的代码提示提高开发效率。 4)代码调试 开发好的代码可以通过两种方式进行调试,一种是在PC模拟器调试;一种是在真机调试(Android和iOS)。Pc模拟器模拟了大部分ExMobi在手机能力,在PC模拟器上可以完成大部分功能的调试。真机调试可以直接将开发好的代码编译到移动终端上进行实际效果查看和调试,与实际开发效果一致。而且调试过程可以断点、查看日志、分析报文等以帮助发现和分析问题。 5)应用插件部署 在代码调试阶段实际应用插件会自动部署(同步)到MBuilder中内置的客户端和服务端中。如果购买了ExMobi的企业版(产品分类),在开发中也用到了服务端的能力,则开发好的应用插件需要部署到工程版的ExMobi服务端中方能进行后续的部分。工程版的ExMobi服务端部署好之后必须申请li—cerise授权方能使用。 6)应用插件打包客户端 应用插件开发好之后,如果希望其成为一个独立的安装包形态(ipa或apk等),则需要对应用插件进行打包成客户端安装包。有两种方式可以打包客户端,一种是在MBuilder中打包,一种是云打包(进人控制台)。打包后的客户端可以让最终用户进行安装。 7)客户端发布 打包后的客户端可以提供统一的发布方式访问。在工程版ExMobi服务端的应用管理中只要将打包后的客户端上传上去即可在统一的下载页面中进行下载。下载页面提供PC浏览器访问、手机浏览器访问、二维码扫描等多种途径发布应用客户端提供给最终用户下载使用。 5结论 移动APP开发发展快速,为客户和商家所青睐,未来的市场格局,不仅要求企业能提供业务的在线服务能力,也要求商家开发方便易用的手机APP应用,这涉及使用哪家平台,传统的行业通过外包方式进行APP开发,具有IT基础的科技创新类公司则可自己选择一个移动APP平台进行开发,本文推荐的EXMOBI平台就是一款开发周期短,可轻松集成支付功能,位置功能,语音功能等,结合行业需求和背景,轻松开发APP,使开发和维护成本大大降低。 |
随便看 |
|
科学优质学术资源、百科知识分享平台,免费提供知识科普、生活经验分享、中外学术论文、各类范文、学术文献、教学资料、学术期刊、会议、报纸、杂志、工具书等各类资源检索、在线阅读和软件app下载服务。