PWA和Hybrid App之间的技术差异

时间:2018-10-16 18:09:32

标签: hybrid-mobile-app progressive-web-apps

PWA和混合应用程序之间有什么区别?之前曾问过这个问题,但我没有找到正确的答案。

我知道PWA在浏览器中运行,您会从应用商店中获得混合应用。

但是两者都将JavaScript与HTML和CSS一起使用,并且都启用了脱机支持,并且我可以访问照相机和本地存储之类的本机功能。

一旦我在主屏幕上添加了PWA,它就会使用Web视图呈现应用程序,对吗?而且混合应用程序也使用Web视图,那么PWA和混合应用程序之间到底有什么区别?

有了Ionic,我什至可以为pwa和混合应用程序使用完全相同的代码...

2 个答案:

答案 0 :(得分:2)

大致如下:

  • Web应用程序(PWA)只是一个使用清单文件等声明某些功能的网站,它可以对其进行一些特殊处理(例如利用服务人员,注册Web通知,进入全屏显示等)浏览器支持它)。作为网络应用,它在系统级别(例如持久性配额等)的“特权”非常有限

  • 混合应用程序(例如Cordova)是一种二进制代码,可以“包装”您的Web代码并通过插件公开某些“本机” SDK功能。您还可以编写自己的插件,并且理论上可以通过这种方式访问​​任何本机SDK API。但是,由于您的主要应用程序代码仍然是在Web视图中运行的Web应用程序,因此它仍然会有很多诸如性能等方面的惩罚。但是至少您可以获得诸如存储之类的东西。

  • 本地应用程序是使用目标平台的SDK的二进制版本。在 理论使您最大程度地获得以下能力和性能 必须为每个平台编写单独的代码。

有道理吗?

enter image description here

答案 1 :(得分:1)

渐进式应用

  1. 如今,这些应用仅可在Opera,Chrome和Samsung移动浏览器上运行。但是,这些浏览器只占不到移动浏览器市场的一半。
  2. 在某些设备中,某些功能将无法使用。例如,iOS设备上的通知将不起作用。
  3. 在某些应用中,相机,指纹扫描仪和GPS可能无法正常工作或出现毛刺。

基于Cordova / Ionic的混合应用程序

  1. 要使混合应用有效地在多个平台上运行并非易事。在某些情况下,其成本可能与运行本机应用程序几乎相同。费用将取决于您想要接近本机应用程序体验的程度。
  2. 由于这些应用程序将使用类似于浏览器的组件启动,因此它们仅与运行它们的组件一样好。此前,谷歌和苹果不同意WebView。尽管已进行了很大的改进,但它的效率与运行本机应用程序不同。