【问题标题】:Confused about Web share API and Cordova share plugin对 Web 共享 API 和 Cordova 共享插件感到困惑
【发布时间】:2018-10-04 06:44:01
【问题描述】:

我正在尝试在我的 Cordova 应用中实现分享功能,让用户分享他们的图片

根据 Chrome 开发团队的说法,他们将 Web share API 直接引入了 Google Chrome。要分享内容,只需致电:

navigator.share({title: 'Example Page', url: 'https://example.com'});

但据我所知,Cordova 也有一个插件,即cordova-share-plugin

要使用这个插件,只需调用:

navigator.share(text,title,mimetype)

这就是我感到困惑的地方。内置共享 API 和 Cordova 插件都具有相同的方法 navigator.share()。预期的参数不同。

如果我安装了cordova 共享插件并调用navigator.share() 会执行哪个代码?插件还是原生共享 API?

我的一位用户似乎无法分享图片,因为对 navigator.share() 的调用静默失败。他有安卓8.1.0。当我的应用调用 navigator.share() 时,所有其他用户似乎都触发了 Cordova 插件

【问题讨论】:

    标签: javascript android cordova google-chrome cordova-plugins


    【解决方案1】:

    这是一个相当古老的插件,当navigator.share 在浏览器中不可用时创建。

    插件破坏navigator.share,因此它将使用插件实现而不是浏览器实现。

    【讨论】:

    • 好的。但如果我删除旧插件,那么 navigator.share() 将仅在某些 Android 版本上可用。例如,在我的设备上它抱怨 .share() 不是函数
    • 是的,插件不应该破坏 navigator.share,它应该检查是否可用,如果不可用则定义它。您必须分叉插件并进行这些更改或找到另一个插件来完成它。还有这个另外的插件,但是也重新定义了navigator.share而不检查是否存在github.com/EddyVerbruggen/SocialSharing-PhoneGap-Plugin
    猜你喜欢
    • 1970-01-01
    • 2017-08-20
    • 2011-11-28
    • 2016-04-13
    • 1970-01-01
    • 1970-01-01
    • 2017-06-03
    • 2015-06-15
    • 1970-01-01
    相关资源
    最近更新 更多