我在《用HTML5新特性开发移动Web App》中全面提到了移动Web App的各种优点,包括:
- 云端升级
- 跨平台
- 代码复用
- 结合强大的云计算平台的能力
- 绕过App Store
下面的这篇文章也提供了对于各种类型应用的详细分析。
当你开始一个新的移动项目时,选择采用本地(Native),混合(Hybrid)或者Web App哪种方案可以说是艰巨的任务。 J Schwan全面分析了每种解决方案的优点和缺点。
移动Web的最大优势是跨平台。你只需要开发一次,这样成本更小。
移动Web优点:
- 跨平台
- 开放标准
- 没有私有的编程语言
- 更容易重用现有技术
- 不依赖应用商店
移动Web缺点:
- 断网时不能保持状态-注:HTML5已经提供支持
- 不能访问(大部分)手机的传感器-注:HTML5已经提供支持
- 设备的测试是一个挑战
- 要编写多种实现
- 无法通过应用商店进行市场推广和分发
当你需要访问手机的传感器时,本地应用非常合适。它适用于你需要丰富的、无与伦比的用户体验和大多数功能都需要断网能正常使用时。
本地应用程序优点:
- 本地访问手机的传感器
- 本地访问手机的数据
- 离线存储
- 丰富的界面选择
- App Store的商业化/ App购买
本机应用程序缺点:
- 不同的开发技术
- 不同的IDE
- 重复的开发成本
- 支持成本增加
- App Store的审核队列
如果你正在将一个已有的Web App移动化,混合应用非常合适。但是你需要上传应用到商店,需要本地应用覆盖所有平台,移动Web App的功能不需要支持断网状态,以及你需要访问手机的某些硬件功能。
混合应用优点:
- 大多数内容可移植(基于移动Web开发)
- 断网状态可用
- 有些屏幕可以通过本地化的方式开发
- 支持桌面通知
- App Store的分发/可购买
- 降低多平台的成本
混合应用缺点:
- 移动Web提供的内容会降低用户体验
- 离线访问对于移动Web的屏幕来说毫无价值
- 多平台的封装需要熟悉本地和移动Web的技术
最后,我们正在朝着移动化的操作系统发展,我们将有工作站来处理移动网络的异常场景。 因此,这会带来骤变。所以当我们在设计新产品时,请更多地考虑移动化支持。