javascript - 是否可以将 Cordova exec 命令从外部网络发送到 cordova 应用程序?

标签 javascript android cordova webview phonegap-plugins

我的问题是是否可以将 cordova.exec() 从外部网络发送到 cordova 应用程序?

以下是我的需求的详细场景...

我用 cordova cle 构建了一个 Android 应用程序, ( Cordova Activity )

并实现pluginA,

当我在应用程序中使用 cordova.exec 时,我确信这个插件可以成功运行。

在另一边,我使用webView来加载外部页面,

就像这样的loadURL(“我写的一些网页。”)。

在该网页中,我包含 cordova.js 并发送 cordova.exec(pluginA ); ,

但是除了收到警报对话框之外什么也没发生。

(间隙初始化:2) (间隙:[null,“CoreAndroid”,“messageChannel”,“CoreAndroid555630745”]) (间隙:[null,“CoreAndroid”,“显示”,“CoreAndroid555630746”])

In short: Can we use cordova.exec() to invoke native plugin from an external web page?

谢谢大家。

最佳答案

根据我所读到的内容,您的问题似乎是您想要直接在 Cordova 应用程序中加载外部 Web url。从外部 Web 源代码中,您希望能够通过 cordova 执行 native 调用。

如果这是您想要的,您可以使用 cordova-plugin-remote-injection .

它的作用是当您加载外部 URL 时,它会自动注入(inject)您在 Cordova 应用程序中安装的插件。之后,您可以使用变量 cordova在您的外部源代码中。

整个过程非常简单,只需安装插件,剩下的就会自动为您完成。

请记住更新您的 index.html文件在您的 Cordova 中应用。并设置meta像这样的事情允许注入(inject)发生。

<meta http-equiv="Content-Security-Policy" content="gap://ready file:;script-src 'self' data:;">

关于javascript - 是否可以将 Cordova exec 命令从外部网络发送到 cordova 应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34391111/

相关文章:

javascript - 调试使用 ES6 模块的 JavaScript 代码

android - 使用 FrameLayout 改变绝对位置

javascript - Cordova InAppBrowser 将表单发布到 url

javascript - 如何将对象数组转换为按属性分组的新对象数组?

javascript - 迭代从数据库 Ruby/Javascript 检索的元素

javascript - 无法使用 .not() 或 :not properly

android - Android 应用程序 Api 1 与 Api 2 中的 Google Pay

android - 如何为 Xamarin 库项目(iOS 和 Android)运行单元测试?

javascript - Phonegap/Cordova 代码在构建时不断重置

javascript - 我想要一些结果位于另一个回调函数内部