资讯 / INFORMATION
首页-资讯-app业界资讯

app开发资讯

app业界资讯

什么时候选择hybrid(混合的)APP开发

来源:徐州亿网网络科技 时间:2017-03-04



随着智能手机的普及,移动端应用几乎成为每个互联网产品的标配。在快速迭代的互联网战场中高效开发、低成本上线产品,是每个应用开发团队追求的目标。此时,选择合适的应用类型和开发模式便至关重要。移动应用可以粗分为三种:原生应用(native APP),网页应用(web APP,或HTML5 APP),以及它们的混血儿--混合模式移动应用(hybrid APP)。今天的徐州APP开发公司亿网科技就来和大家简单聊聊近年来蓬勃发展的hybrid 混合APP开发。

什么时候选择Hybrid APP

在hybrid APP备受追捧的今天,我们也许会随大流优先考虑开发hybrid APP.但是,每个产品各具特色,还没有哪一种解决方案可以完美地应万变。hybrid APP的中庸让它大放异彩,也限制了它的应用场景。在决定采用一种开发模式之前,有许多因素需要考虑,诸如:

你希望针对哪个平台做开发?

你希望通过应用商店发布应用么?

你希望利用手机特有的性能么?

你的团队技术能力如何?

你的项目周期和预算是多少?

如果要设计Angry Birds一类对图形要求很高的游戏,那么在暂不考虑技术团队能力的情况下,native APP是最优选择;如果要设计如Yelp一类内容导向的应用,那么hybrid APP会是很好的选择;如果项目时间紧张,没有足够的人手和资金,对图形和系统原生特性没有要求,那么web APP将是性价比最高的解决方案。

InfoQ上高嘉峻的一篇文章分享了几个hybrid APP开发的误区,也是开发过程中应该尽量避免的:

为了HTML5而hybrid APP:HTML5是HTML4.0.1和XHTML1.0的升级版,有更强大的表现功能,并加入了local storage等技术,为web页面提供了更大的想象空间和更多的可能性。但是,作为发展中的技术,HTML5收到浏览器兼容性和手机硬件水平的影响,能提供的功能和native APP扔有一定的差距。开发应用时,首先是要满足用户需求,而不是追赶技术革新的大潮。所以开发应用时,应从应用本身功能和团队开发资源综合考量,决定是否采用hybrid APP开发模式。

忽略关键因素:Web是基于PC的一种开发模式,而mobileAPP运行于移动端。通常,web开发者使用PC浏览器模拟APP中的web view进行调试,而不是直接使用手机上的web view.二者能支配的CPU资源,最大占有内存,运行网络环境,和鼠标/触控操作,浏览器对CSS/JS的解析和对事件的处理有着巨大的差别。而这些差别常常是web页面能否正常运行于APP中的关键因素。

富交互导致体验差:这主要体现在两个方面:(1)web与手机平台默认交互习惯不一致:iOS和Android各有一套交互习惯,包括视觉风格,界面切换,操作习惯等。比如手机端系统风格是左右滑屏来进入或者退出界面,而旧界面保持状态;web则是默认无论加载还是后退,都会刷新旧界面,造成体验上的损失。如果模拟native的交互方式,那么会提高开发成本,却也难以达到native的流畅性。(2)与native相比同样的功能在性能上存在差距:Web界面上JS对HTMLNode的操作需要消耗大量的CPU资源。首先,手机的CPU性能普遍低于PC端;其次,不同手机之间的硬件水平也参差不齐,比如在iPhone6s上可以流畅运行的界面,在iPhone5、MX5上可能就无法达到同样的流畅度。

跨平台:混合APP开发的优势之一是继承web跨平台的特性。然而,在智能手机软硬件版本众多的今天,兼容性是个不容忽视的问题。不同的安卓操作系统其浏览器内核对JS和CSS的解析、事件处理会有不同;iOS不同版本之间也存在较大差异。所以,在跨平台开发时,兼容性也是需要重点考虑的问题。

交互一致性:这里的一致性并非指同一应用在不同平台上的一致性体验,而是指在同一平台上,hybrid APP和native平台的一致性。比如“返回”操作,在iOS平台上页面顶部留有一个44像素高的导航栏,左侧的返回按钮用于返回操作,可以通过绝对地址的方式链接到任何其它界面;而Android通常使用设备提供的返回键,返回上一个界面,如果自行配置平台返回按钮,那么它会和设备提供的返回键指向不同的位置。