【问题标题】:Is it possible for Cordova plugins to work with PWA?Cordova 插件是否可以与 PWA 一起使用?
【发布时间】:2017-07-10 05:26:04
【问题描述】:

我正在寻找 PWA 部署,目前我正在使用 Ionic 应用程序。我正在使用仅在设备上受支持的 Cordova 插件。如何在浏览器上使用 Ionic?

【问题讨论】:

    标签: cordova ionic-framework progressive-web-apps


    【解决方案1】:

    是的,如果您将 Web 应用程序打包为 cordova 托管的 Web 应用程序,则可以。换句话说,构建一个常规的 Cordova 应用程序,其 webview 指向您的 Web 服务器 URL。您的网络应用程序可以让代码与cordova 插件交互。

    没有办法在 PWA 应用程序中使用 Cordova 插件而不打包它可以工作 Cordova(至少截至 2018 年 3 月和接近功能)。也就是说,当 PWA 应用程序在浏览器中运行/使用“添加到主屏幕选项”安装它时,你不能在 PWA 应用程序中使用它。

    这样的 PWA 应用程序在浏览器中运行(包括使用“添加到主屏幕选项”但没有地址栏的已安装应用程序)。浏览器没有本机代码访问权限,这是 Cordova 插件工作所必需的。

    在常规的 cordova 应用程序中,包括 Ionic cordova,它是一个带有 webview 的本机应用程序。因此应用程序的原生部分可以访问原生 API,该 API 用 JS 接口包装,用于 Web 应用程序。

    【讨论】:

    • 对于 iOS,它没有给我“添加到主页”选项。你以前见过这个问题吗?此外,如果我无法在 iOS 上使用该选项,是否可以在 PWA 中使用其他插件来使用位置服务、推送通知和谷歌身份验证等功能?这些是我正在使用的最重要的 Cordova 插件。
    • PWA 仍然是一个常规的 Web 应用程序。从这个意义上说,您可以使用 Cordova 包装它并使用任何 cordova 插件,就像您在其他 Web 应用程序中使用的方式一样。 “添加到主屏幕”弹出窗口在 iOS 中不起作用。那不是问题。那是Apple仍然没有提供的功能。但用户可以从 Safari 菜单添加到主屏幕。
    • 还有注册推送通知,它也有浏览器/平台限制。 iOS 还不支持。 caniuse.com/push-api
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-11-10
    • 1970-01-01
    • 1970-01-01
    • 2017-11-12
    • 2019-03-13
    • 1970-01-01
    相关资源
    最近更新 更多