文章出自:云度:http://www.yunduapp.com 转载请注明出处
一 、Native APP(原生APP),位于平台层上方,基于各平台系统开发的app,向下访问和兼容的能力会比较好一些,可以支持在线或离线,消息推送或本地资源访问,摄像拨号功能的调取。但是由于设备碎片化,app的开发成本要高很多,维持多个版本的更新升级比较麻烦,用户的安装门槛也比较高。但是比较乐观的是,App store培养了一种比较好的用户付费模式,所以在Apple的生态圈里,开发者的盈利模式是一种明朗状态,其他market也在往这条路上靠拢。
二、Web APP(网页APP),web应用程序的一种,主要是使用HTML5技术,如javascript、css,并能够在文本浏览器中运行。开发者们可以通过互联网或者移动互联网发布自己的web-app程序,由于发布的版本不断更新,所有用户需要了解web-app 的版本信息,以免出错。Web应用程序用于规避苹果通过其应用程序商店销售iphone提出,例如,Google Voice。web应用程序可以在线使用,也可以离线使用.:
三、Hybrid APP(混合原生APP支持下的网页APP),部分代码以WEB技术编程,部分代码由某些Native Container承担(例如PhonGAP插件,BAE插件),介于这两者之间的app,它只有一个UI WebView,里面访问的是一个Web App,比如街旁网最开始的应用就是包了个客户端的科,其实里面是HTML5的网页,后来才推出真正的原生应用。再彻底一点的,如掌上百度和淘宝客户端Android版,走的也是Hybrid App的路线,不过掌上百度里面封装的不是WebView,而是自己的浏览内核,所以体验上更像客户端,更高效。
以下是特性对比列表
特性 | Native App | Hybrid App | Web App |
开发语言 | 只用Native开发语言 | Native和Web开发语言或只用Web开发语言 | 只用Web开发语言 |
代码移植性和优化 | 无 | 高 | 高 |
访问针对特定设备的特性 | 高 | 中 | 低 |
充分利用现有知识 | 低 | 高 | 高 |
高级图形 | 高 | 中 | 中 |
升级灵活性 | 低 | 中 | 高 |
总通过应用程序商店来升级 | 常通过应用程序商店来升级 | ||
安装体验 | 高 | 高 | 中 |
从应用程序商店来安装 | 从应用程序商店来安装 | 通过移动浏览器来安装 |
你的项目采用哪种应用是由多种因素决定的,比如你的预算是多少?如果你的公司有足够的预算的话可以选择一些本地应用,但是大部分公司预算还是有限的,因此需要仔细斟酌。这也是为什么大部分厂商对“Native APP Vs. Web APP”之争特别热衷的原因。对复杂产品来说,Native App + Web App的混合模式也许是个不错的解决方案,在可能的地方使用Web视图,在不能的地方使用平台特定的本地化组件。