我们的PWA完全使用新的Angular构建 . 我们已经实现了所有优化,例如树摇,uglify,AOT,服务工作者等 . 它运行良好,并且像移动应用程序一样运行 . 如果用户将其添加到主屏幕,则很难区分 .
PWA遇到了一些很大的限制:
-
我们业务的所有通知(至关重要)必须以短信形式发送 . 这显然具有巨大的成本效益 . 我们确实考虑在Android上使用"web"推送通知,尽管我们也有很多iOS用户 .
-
我们需要能够"background"中的"track"地理位置,并且HTML5 Geolocation API不会削减它 .
-
目前每次用户导航到URL(作为短信提醒发送)时,往往会在浏览器中打开新标签(取决于手机) . 即使用户实际将应用程序添加到其主屏幕中也是如此 . 这显然会增加加载时间并创建太多选项卡 . 我们宁愿将应用程序放在前台并导航到特定路线(或使用推送通知)
-
我们的一些活跃用户每天可以轻松收到10个通知,他们需要轻松导航到应用程序 .
我们研究了NativeScript和Ionic . 两者都提供了开发Angular应用程序的能力,但它们似乎“似乎”围绕专门为移动设备编写应用程序而设计(......或者从头开始使用它们) .
我可能错过了一些东西,但是当我们只想将包装器放在我们的渐进式Web应用程序中以便它可以作为“混合”应用程序安装时,最佳做法是什么 . 该应用程序只需导航到我们的公共URL,它支持服务工作者,并允许我们访问一些本机功能 .
我知道我可能在这里错过了PWA的观点,但是编写另一个“本机”应用程序对我们来说并不是真正的选择 .
在Google Play商店或Apple App Store中展示我们的渐进式网络作为应用的最佳方式是什么?
3 回答
开始使用托管Web应用程序的好地方是PWABuilder.com . 此工具可以在线使用,也可以从CLI使用 . 它的一部分创建了服务工作者和东西,但它也为Android和iOS创建了Cordova项目 .
我用PWABuilder创建了一个起点 . 最终将生成的iOS和Android项目合并为一个适用于iOS,Android和Windows的项目 . 因为它是Cordova,你也可以使用插件 .
您可以轻松地将PWA打包为离子/ Cordova应用程序 .
目前无法在ios上实现网络推送 . 使用Cordova .
无法进行背景跟踪 . 考虑定期推送通知和后台同步的混合,看看它是否有任何帮助 .
在Android上,用户需要做的就是在第一次链接打开时总是点击,不记得它是如何在ios上的 .
推送通知允许您指定URL .
你可以阅读这篇文章,以了解更多关于我如何混合cordova与PWA .
https://medium.com/awebdeveloper/pwa-is-future-of-mobile-how-to-tame-it-855dd42df0ec
您可能想要搜索深层链接 .
https://developers.google.com/web/updates/2017/02/improved-add-to-home-screen#android_intent_filters