【问题标题】:Call phonegap plugin function within web app在 Web 应用程序中调用 phonegap 插件功能
【发布时间】:2014-08-04 16:46:29
【问题描述】:

我正在构建我的第一个 phonegap 应用程序,当我打开该应用程序时,我会立即将 (window.location) 用户重定向到托管我的 Web 应用程序的服务器。是否可以从那里加载 phonegap 插件?因为“deviceready”事件没有触发,我不能调用任何插件函数。

【问题讨论】:

    标签: redirect cordova web-applications plugins


    【解决方案1】:

    我可以确认,远程加载确实允许访问本机组件(当脚本正确加载时),并且 cordova.js 似乎不需要由本地 index.html 引导程序加载。

    【讨论】:

      【解决方案2】:

      简短回答:是的

      一些“陷阱”

      1. 您必须为浏览您网站的平台提供正确的 cordova.js 版本。

        you can look here for more info https://github.com/apache/cordova-js. This project hosts the core js elements, and builds the platform specific cordova.js lib

      2. 您的应用想要与之交互的任何插件 api 都必须预先安装到本机应用中

        任何带有本机代码的插件都必须添加到项目中并部署到捆绑在应用程序内的设备上。没有办法延迟加载本机代码。但是,插件的 js 部分可以托管在您的服务器上。

      更多信息,一些执行此操作的应用

      1. PhoneGap Developer App 使用与上述内容和您想要的类似的技术。唯一的区别是它是作为开发工具的,而服务器是本地开发机器。

      2. Cordova App Harness 也使用这种技术,将应用程序包与插件预先捆绑在一起,以供远程托管资源使用

      【讨论】:

        【解决方案3】:

        您不能,deviceready 仅在应用程序仅在手机环境中运行时才能运行。如果是基于 Web 或桌面的应用程序,则不会触发。

        【讨论】:

          【解决方案4】:

          不,不要那样做。加载远程网站将无法使用您的插件。并且该应用也会在 istore 上被拒绝

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2014-01-08
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2013-04-25
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多