哪个更好? Native App还是混合App?

时间:2013-10-21 06:16:11

标签: android ios windows-phone-7 mobile

我想为iOS,Android和Windows手机开发一个简单的应用程序。

我只是想知道一个简单的HTML5,JS和CSS组合可以在所有这些平台中运行。

我想知道哪一个会有效?

时间和编码没问题。但如果我能用HTML5-JS本身实现一切,我会选择混合开发。我想知道本机和混合开发之间的主要区别与示例(我知道主要的区别是HTML5-JS支持跨平台)。

注意:我没有制作游戏应用程序。

2 个答案:

答案 0 :(得分:33)

根据我的经验,除了您正在开发的应用程序非常简单,这些跨平台解决方案(如PhoneGap和其他人)从未真正达到预期。即使是基本的东西,如过渡动画和小型UI调整,使用这些工具也将是一场艰苦的战斗。

本机开发可能需要更长的时间(如果您正在构建超过1个平台的应用程序),但优势在于您可以完全控制您正在制作的内容。在性能方面,本地开发仍然,并且可能永远是远远超出跨平台开发,仅仅因为它没有嵌套在浏览器或任何其他运行时解释平台中的开销。

另外,根据我的经验,能够编写一次代码并让它立即在所有平台上运行的神话是一种圣洁的圣杯。许多人声称已经实现了它,但你总会发现自己编写特定于平台的代码(如果是“探险家,如果是徒步旅行,如果是铬”等)。

我的建议是,为您的应用编写一个可靠的架构。在一个平台上构建应用程序,解决设计中的所有故障,然后将设计复制到其他平台。它会花费你更长的时间,但你的应用程序的优势,以及在你的应用程序中添加/更改功能和其他小东西的灵活性将是值得的。

举个例子,拿Facebook。他们以前的应用程序(如果你还记得)是一个跨平台的应用程序。它很慢,没有响应,会一直崩溃,几乎无法使用。大约一年前,在无数次投诉之后,他们用他们的原生应用程序发布了更新,突然之间,所有这些问题都消失了(好吧,至少大多数)。

答案 1 :(得分:6)

主要区别在于UI组件,这是应用程序中的主要内容。您无法在Hybrid应用程序中实现原生外观和感觉,如原生对话,通知和本机动画。

  

我想知道哪一个会有效率?

效率不是问题,混合应用程序将是一个支持多个平台的应用程序,具有成本和时间效益。

混合应用的PROS

  1. 具有成本效益,将开发单个应用程序,从而节省成本 支付给开发人员在不同平台上制作应用程序。
  2. 时间有效,保存时间以制作不同的应用 不同的平台。
  3. 将更新速度非常快,不像您从谷歌Playstore更新了 应用程序将仅在服务器端更新,您不需要 重新安装它。
  4. 尺寸较小。作为用于支持多个的资源 屏幕将由HTML处理。
  5. 混合应用的缺点

    1. 没有外观和感觉就像原生应用。
    2. 如果服务器关闭,应用程序甚至不会显示静态行为。
    3. 如果您愿意与用户界面妥协,那么您应该使用混合应用程序。