C0-PhoneGap之移动开发策略的选择(翻译)

英文原文地址:http://phonegap.com/blog/2015/03/12/mobile-choices-post1/java

移动App开发策略选择

这篇文章是,选择移动App开发策略时面对不一样选择如何综合考虑之系列文章的第一篇。经过各方面的比较,让开发者明白何时什么地方在本身的app里面使用Adobe PhoneGap。react

当咱们搭建一个native,mobile web或者hybrid移动app时,最常考虑的选择以下。web

一、Native Mobile App

  • 运行在特定的设备和系统上面
  • 跑在本地的app
  • 多种语言编写,Objective-C/Swift (iOS) Java (Android) or C# (Windows)
  • 须要安装到设备上
  • 必须经过app分发市场审核
  • 不依赖容器(webview or the like)
  • 离线依然可使用

Native App Example

二、Mobile Web App

  • 跑在任何设备的移动浏览器
  • 不多调用设备API(Camera)
  • 使用统一的web技术标准编写-HTML5/javaScript/CSS
  • 不须要经过某个app store的提交、审核、发布流程
  • 自适应多种屏幕尺寸
  • 由一个web服务器支撑
  • 离线状态没法使用

Mobile Web App Example

三、Hybrid Mobile App

当说到hybrid的时候,一个很重要的概念要进一步澄清,将hybrid mobile apps分红Web Hybrid和Native Hybrid两种更有意义,也是本篇文章的依照的定义。浏览器

Web hybrid mobile apps

Web hybrid mobile apps主要被包裹在一个webview里面,和一个简单的native容器用来桥接native的API。UI控件也不须要native提供,它只是对native和webview交互的一个简单封装。服务器

Native hybrid mobile apps

Native hybrid mobile apps混合了native控件和一个或多个webview。常见的方案是,native建立navigation和tabbar,主要内容放在各个被包裹的webview里。架构

Hybrid App Characteristics

  • 做为一个须要本地安装的app跑在设备上
  • 使用统一的web技术标准编写-HTML5/javaScript/CSS
  • 跑在一个webview上(嵌入的web浏览器)
  • 多数状况下,多种平台只须要一套base代码
  • 能够调用native API(摄像头,联系人,加速计,CPS等)
  • 须要经过app分发市场的提交,审核,发布流程(iOS App Store,Google Play)
  • 须要运行在特定的设备
  • 自适应多尺寸屏幕
  • 离线状态可使用

PhoneGap能够用来建立上面两种类型的hybrid app,而且提供了很强的灵活性去结合native元素来裁剪用户体验,在拥有web的好处的同时尽力得到一个更native的视觉效果和体验。已经很是清楚了,为何愈来愈多的公司选择混合native和web,就是为了以混合的方式同时得到他们二者的好处。app

Hybrid Sweet Spot

不少开发者选择native建立navigation和tabbar,将主要的内容放在各个被包裹的webview里,以在保证大范围的用户可以快速使用它们的app的同时,节省大量的时间和成本。此方式也提供了避开App Store审批的麻烦以快速更新的能力。以这种模式,每一个平台只须要一小部分的native基础代码须要维护,并且这小部分代码表明的是app里的固定部分,而不是主要内容,从而更容易管理。框架

一个很受欢迎的项目管理app,Basecamp的创始人,也采用混合开发的方案。他们写过不少质量很高的文章来说解他们的移动app的架构,以及它是如何不断演进出最好的native和hybrid的混合方案。iphone

Basecamp的多设备运行

JavaScript SDK Frameworks

另外一种移动app,一样用JavaScript来渲染视图,并用native来实现平台适配,也应该被看成hybrid讨论。一些框架罗列以下:post

React Native一直是闭源的,而NativeScript刚刚发布开源后的beta版本,因此均没法提供更多的信息去彻底的理解如何在app中使用他们的框架。

Stay tuned

如今你应该已经有办法去作出有效的选择了,系列文章的下一篇将特别聚焦在PhoneGap在native中嵌入webview的混合开发中如何使用。很快更新,及时查看。

相关文章
相关标签/搜索