使用离子与angularjs相比本机应用程序的缺点?

时间:2015-12-31 14:04:25

标签: cordova ionic-framework

好的混合应用程序是2015年的新酷故事。但与本机应用程序相比有哪些缺点?

表现是一个。浏览器永远不会像本机应用程序那样流畅。

?在启动时运行后台服务? (可能,因为浏览器没有在启动时启动,例如,如果没有打开应用程序,接收whatsapp风格的通知似乎是不可能的)

?离线使用? (我可以离线启动应用程序,而无需通过网络加载任何HTML等吗?)

?还有什么?

是否有替代离子来解决这些问题?

编辑

最终是否可以使用在应用程序旁边启动的服务?例如你安装了离子应用程序,随之而来的是一个后来添加的本机服务吗?

1 个答案:

答案 0 :(得分:2)

在书Ionic in Action中,作者Jeremy Wilken说这关于混合移动应用程序的缺点:

  

由于WebViews的限制和本机集成的限制,混合应用程序有一些缺点:

     
      
  • WebView限制 - 应用程序只能运行WebView实例,这意味着性能与平台浏览器的质量有关。
  •   
  • 通过插件访问本机功能 - 您当前可能无法访问所需的本机API,并且可能需要额外的开发才能制作插件来支持它。
  •   
  • 没有本机用户界面控件 - 如果没有像Ionic这样的工具,开发人员必须创建所有用户界面元素。
  •   

如果列表中有很多项目,那么滚动会受到影响(确实,collection-repeat会改善这一点,但如果我们是挑剔的话,这仍然是事实

显然,如果您正在尝试构建游戏,更不用说3D游戏,那么您根本不应该考虑使用混合移动应用程序。在这种情况下Unity3D(根据我的个人经验)是你可能想要走的路。

要回答有关离线使用的问题 - 当然,您可以脱机使用您的应用,当然您的设计是这样的,这样您就不需要持续的互联网连接。例如,在我为Pluralsight写的4 part tutorial series中,我向您展示了如何创建一个简单的计算器应用程序并将其部署到App / Play商店,例如,这个应用程序不需要任何互联网连接。如果您有兴趣,还可以free book

当你做(并且没有)时解决问题的一个想法是在本地保存所有内容,并在获得连接时同步离线期间保存的内容。显然,这并不像听起来那么简单,它需要你花一些时间才能正确行事,但就可行性而言,这绝对是可能的。

希望这有点帮助。