HTML5 vs Native App:选择哪个?

Leg*_*las 14 iphone mobile html5 android windows-phone-7

这个问题很受欢迎,并且已经有很多与之相关的问题.但是其中一些已经过时了(比如6个月前),而且截止日期是2012年5月......如果你现在可以输入哪一个更好,那就太棒了!

我正在研究一些应用程序,跨平台功能是一个重要的交易.我想知道我是否可以使用HTML5来实现以下功能.

  1. 在我的应用程序中创建音乐播放器(需要阅读所有播放列表并播放它们) - HTML5(或)Native?

  2. 加速度计使用 - HTML5(或)Native?

  3. 相机使用 - HTML5(或)原生?

  4. 使用手势(swype等) - HTML5(或)Native?

  5. 多点触控功能和手势 - HTML5(或)Native?

  6. 用物理学开发3D游戏(或)2.5D - HTML5(或)Native?(原生可能是最好的交易,但我很想知道HTML5在多平台游戏开发中的表现如何)

如果您可以使用正确的答案对选项进行编号,并给出我为什么必须使用native/html5的原因,那将是非常棒的:)


另外,您对Phone-Gap原生支持有何看法?

Cle*_*rua 16

在我的应用程序中创建音乐播放器 - 两者.HTML5可能很乏味.

加速计使用 - 原生.Html5不支持它

相机使用 - 原生.Html5不支持它

使用手势 - 原生.Html5可以支持它,但你必须使用外部库

多点触控功能和手势 - 我说原生,因为易于开发

用物理学开发3D游戏(或)2.5D - 现在两个系统都可以使用一些优秀的库.但是,在HTML5中执行您想要的操作目前可能并不容易.

更一般地说,HTML5使您可以为每个系统编写一次代码,然后想知道它是否会在任何地方以相同的方式工作.原生应用程序需要针对每个平台进行特定开发,其成本和问题是将许多软件保持在不同的成熟阶段.

但是,如果您不需要特定功能,请转到HTML5.到目前为止,编写代码仍然有点乏味,但可用库的质量和数量每天都在增加.使用CoffeeScript,它会让你头疼.

如果您的应用程序在设计时考虑了响应式设计,那么您还可以在一个应用程序中支持计算机,平板电脑和智能手机.

  • 我会为所有这些功能选择原生 (3认同)
  • 相机使用需要是原生的吗?我想如果你使用PhoneGap它可以工作. (2认同)

ade*_*der 16

除非您的应用程序非常简单,否则请避免使用所谓的跨平台解决方案并为每个平台构建本机.如果你这样做,你会很高兴的.

如果你不这样做,那么当某些设备出现故障而其他设备出现故障时,或者当您收到添加某些设备不支持的某些功能的请求时,您将会非常抱歉.

基本上使用跨平台解决方案是最低的共同点/仅适用于我的经验中的简单应用程序/虚假经济.

仅仅基于12年以上的商业软件开发和我自己尝试这两种方法的经验,我的拙见.

  • 我想我希望phoneGap文档对我有不同的看法,他们试图"卖"phoneGap.我也认为,认识到跨平台"解决方案"一旦发布就不会支持最新和最好的功能是明智的. (2认同)