移动中间件
软件
移动中间件(mobile middleware)是一个软件,用来连接不同的移动应用、程序和系统。
含义
移动中间件是连接不同的移动应用,程序和系统的一种软件。移动中间件实际上隐藏了多种复杂性:在移动环境下工作的复杂性,允许设备对设备的流畅交互的复杂性,移动与计算机集成的复杂性和移动应用开发的复杂性。和其它的中间件一样,移动中间件也是通过提供信息服务来使不同的应用之间进行通话的一个典型。随着多样化的平台和设备进入到移动空间,移动中间件已经变得越来越重要。随之而来的结果就是,众多移动中间件厂商纷纷提供开发服务,以解决快速增长的移动硬件与移动软件市场。
作用
在本地和HTML5应用开发策略中,移动中间件连接设备和本地硬件的服务。在不需要重写后端的情况下,它也可以使企业架构师和开发者再利用同一的后端逻辑来帮助多台移动设备与每一个单独设备进行工作。移动中间件服务能实现储备软件开发资源等功能,而且移动中间件是设备与后端互联助力器,而且移动中间件能促使开源ESB和BAM平台发挥更高效的作用。
各代功能
第三代移动中间件
第三代移动中间件代表产品iMAG(爱码哥)
◆ 原生的客户体验
因为iMAG引擎底层封装的是原生UI控件,因此具有和原生应用相同的性能和用户体验。单就性能和用户体验这点是PhoneGap等基于HTML5的框架无法比拟的。
◆强大的手机本地调用能力
在iMAG中可以方便地调用推送、定位、地图、电话、短信、拍照、相册、录音、蓝牙、二维码、联系人、数据库、Socket等手机本地功能。
◆同时支持在线和离线两种应用模式
这里的在线和离线即我们通常所说的B/S和C/S两种架构方式。在线应用的XML代码可以由服务器端脚本(比如jsp)动态生成,这样的开发方式类似于开发网页,应用可以动态部署和升级,开发简单,易于维护,尤其适合企业级移动应用开发。相对于在线应用,离线应用将XML代码打包到手机客户端中,数据通过ajax请求来动态获取,因此离线应用有更快的响应速度和更好的用户体验。
◆移动应用管理系统
iMAG Manager作为企业移动应用的管理和运营的支撑系统,可以部署在企业内网,它是手机客户端和企业后端应用之间的桥梁。iMAG Manager集成了应用管理、设备管理、数据统计、推送管理、日志管理、版本更新、安全认证等诸多功能和服务。
第二代移动中间件
第二代移动中间件代表产品:AppMobi、AppCan、Phonegap、Titanium。
◆ 不使用私有封闭内核
第二代移动中间件通常是以移动设备自带浏览器引擎(iOS、Android均为Webkit内核)为依托,通过扩展浏览器内核的能力来满足跨平台移动应用开发的需求,并且消除不同移动操作系统浏览器内核的差异性。
◆ 支持用户自定义插件扩展
第二代移动中间件通常为Hybrid App混合开发模式,都兼容企业用户自定义的原生插件扩展。基于第二代移动中间件定义好的标准,用户可以将众多的原生UI或插件封装出标准的JS接口来进行调用。比如语音识别插件,经过原生插件式的封装之后,用户可以自己按照规则随时使用JS把语音识别的功能调用起来,在HTML5勾勒的页面内实现。
◆ 使用标准语言开发
第二代移动中间件通常以HTML5为主要应用开发语言,AppMobi、AppCan、PhoneGap都是这种方式。Titanium是比较另类的第二代移动中间件,采用浏览器解析但更多是通过JS调用大量的原生UI和交互,同时兼容HTML5。Titanium的优势是运行体验更好,但是开发的局限性大。Titanium的方式也属于Hybrid App是开发模式,只是PhoneGap、AppCan、AppMobi这三种插件的Hybrid更多是以HTML5为主体、Native为辅助,而Titanium是Native为主体、HTML5辅助。
◆ 提供开发网站
第二代移动中间件通常为移动开发者提供一个公众的服务平台,让开发者和企业用户在线体验试用。AppCan有appcan、AppMobi有appmobi、Phonegap有phonegap、Titanium有Appcelerator。因为第二代中间件的定位就是面向开发者,提供一种成熟的、基于开放标准的技术来让开发者体验。所以更容易理解开发者的需求,不断的更新满足开发者的需求。
...........
第一代移动中间件
第一代移动中间件代表产品:数字天堂、南京烽火、Access等。
◆ 适配机型更多
第一代移动中间件主要为满足企业将互联网端的服务移植到移动端的需求。结合当时市场的终端情况,适配大量功能机(Feature Phone、山寨机)如各种kJava手机Symbian机以及Windows Mobile等机型。虽然逐步兼容了iOS、Android等智能机,但由于技术架构的局限性导致在用最低端的应用开发标准兼容高端的智能机,木桶效应影响了整体的水准。导致iOS和Android的产品体验和山寨机、Feature Phone处于同一水准。
◆ 重服务整合轻应用开发
第一代移动中间件虽然号称移动中间件,但本质核心在服务器端,也就是所谓的“数据集成服务器”,通过一个Integration Server将web数据转化成移动端的API。而真正移动端技术和开发的支持反而属于次要位置。导致“移动中间件”变成了“移动服务器中间件”,喧宾夺主。而当前的移动互联网发展趋势,有大量的创新功能和应用,如LBS、传感器、二维码等都不是企业现有系统涵盖的,所以这些功能通过数据集成服务器没有办法直接和企业现有平台整合,因此这个第一代移动中间件的‘镇山之宝’在新的移动互联网时代逐步失去光泽。
◆ 私有标准
第一代移动中间件的移动端,通常是私有标准,基于各自企业的xml解析等方式实现,而不是普及型的技术如基于标准HTML和JAVASCRIPT进行页面的布局、交互实施等。甚至有的第一代移动中间件都不支持灵活的用户自定义的JAVASCRIPT。
◆ 不支持用户自定义插件
第一代移动中间件因为是基于中间件企业私有标准,所以一般不支持第二代中间件最重要的用户自定义扩展原生插件的功能,所有功能必须依附于中间件厂商自己更新和开发。导致使用第一代移动中间件的用户自己能做的事情非常少。丧失自定义扩展能力。
◆ 偏行业化产品
最后,最重要的第一代移动中间件的特性是“偏重行业化的解决方案,而不是应用开发技术”。大量购买第一代移动中间件的用户基本都是购买成型的移动产品,如移动OA、城市门户等功能性的应用产品,由中间件厂商负责实施和开发。第一代移动中间件是在卖解决方案而不是用户可以自己开发的技术。
....................
区分方式
如何区分第一代和第二代移动中间件
总的来说主要三点:
看内核和主要开发语言看用户是否可以自定义开发原生插件,自定义扩展引擎看真的是卖技术还是卖应用产品解决方案第二代移动中间件随着智能机的普及,必将备受企业用户的瞩目和青睐。国外移动中间件市场比较成熟,但是本土化过程漫长,还需要克服水土不服的问题。而第一代移动中间件厂商虽然已经占有了一定的市场份额。但是快速发展的移动互联网在淘汰落后的产品和方案,第一代移动中间件面临巨大的转型压力。所以企业在现有市场环境下辞旧迎新,如何选择合适的产品和技术成了考验企业决策者的难题。但是重前端开发、轻后端集成、服务转云端的思路已经逐渐明朗,第二代移动中间件势必快速占领市场、指点江山。因为代表着先进生产力的发展方向,注定是正确的出路。
参考资料
移动中间件服务技术手册.TechTarget中国SOA.2012-7-17
最新修订时间:2023-07-26 22:32
目录
概述
含义
作用
参考资料