我们的 PWA 完全使用新的 Angular 构建。我们已经实现了所有的优化,例如 tree shaking、uglify、AOT、service worker 等。它运行得非常好,并且表现得像移动应用程序一样。如果用户将其添加到主屏幕,则很难区分。
我们在使用 PWA 时遇到了一些重大限制:
- 我们业务的所有通知(重要)都必须以短信形式发送。 这显然具有巨大的成本效益。我们确实研究过使用“网络” 尽管我们也有很多 iOS 用户,但在 Android 上推送通知 .
- 我们需要在“背景”中“跟踪”地理位置的能力,而 HTML5 Geolocation API 并没有做到这一点。
- 目前,每次用户导航到 URL(作为 SMS 提醒发送)时,它往往会在浏览器中打开新标签页(取决于手机)。即使用户实际将应用程序添加到他们的主屏幕中。这显然会增加加载时间并创建太多选项卡。我们宁愿将应用程序置于前台并导航到特定路线(或使用推送通知)
- 我们的一些活跃用户每天可以轻松收到 10 条通知,他们需要通过简单的方式导航到应用中。
我们研究了 NativeScript 和 Ionic。两者都提供了开发 Angular 应用程序的能力,但它们“似乎”都是围绕专门为移动设备编写应用程序而设计的(......或者从头开始)。
我可能遗漏了一些东西,但是当我们只想在渐进式网络应用程序周围放置包装器以便它可以作为“混合”应用程序安装时,最佳实践是什么。该应用程序只需导航到我们的公共(public) URL,它支持服务 worker ,还允许我们访问一些 native 功能。
我知道我可能在这里忽略了 PWA 的意义,但编写另一个“原生”应用对我们来说并不是真正的选择。
在 Google Play Store 或 Apple App Store 中公开我们的渐进式网络作为应用程序的最佳方式是什么?
最佳答案
开始使用托管 Web 应用程序的好地方是 PWABuilder.com .该工具可以在线使用,也可以从 CLI 使用。其中一部分创建了 service worker 和其他东西,但它也创建了适用于 Android 和 iOS 的 Cordova 项目。
我使用 PWABuilder 只是为了创建一个起点。最终将生成的 iOS 和 Android 项目合二为一,适用于 iOS、Android 和 Windows。因为它是 Cordova,所以您也可以使用插件。
关于android - 添加渐进式网络应用商店/应用商店,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44794327/