Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ionic-framework/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/haskell/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Cordova 如何将postMessage与ionic应用程序内浏览器插件一起使用?_Cordova_Ionic Framework_Iframe_Inappbrowser_Postmessage - Fatal编程技术网

Cordova 如何将postMessage与ionic应用程序内浏览器插件一起使用?

Cordova 如何将postMessage与ionic应用程序内浏览器插件一起使用?,cordova,ionic-framework,iframe,inappbrowser,postmessage,Cordova,Ionic Framework,Iframe,Inappbrowser,Postmessage,由于模块的版本为3.1.0-dev,因此我们可以通过以下方式使用postMessage API: webkit.messageHandlers.cordova_iab.postMessage(stringifiedmessagegeobj); 然而,经过长时间的研究,我没能成功地使它工作。它总是默默地失败。此外,webkit对象不存在。。。正如本文中所建议的,我提交了一个有效的JSON字符串。请在下面找到my package.json文件的摘录: { "dependencies": {

由于模块的版本为3.1.0-dev,因此我们可以通过以下方式使用postMessage API:

webkit.messageHandlers.cordova_iab.postMessage(stringifiedmessagegeobj);
然而,经过长时间的研究,我没能成功地使它工作。它总是默默地失败。此外,webkit对象不存在。。。正如本文中所建议的,我提交了一个有效的JSON字符串。请在下面找到my package.json文件的摘录:

{
  "dependencies": {
     "@angular/core": "~8.1.2",
     "@ionic-native/core": "^5.16.0",
     "@ionic-native/in-app-browser": "^5.16.0",
     "cordova-plugin-inappbrowser": "git+https://github.com/apache/cordova-plugin-inappbrowser.git"
   }
}
我用
npm list–depth=0
检查了cordova应用程序浏览器版本,并安装了3.1.1-dev。 你们知道吗,伙计们?如果您需要更多信息,请不要犹豫。:-)

编辑:我想将数据从iframe发送到我的“主线程”。为了实现这一点,我使用了executeScript方法,该方法在iframe中注入了一个脚本。但遗憾的是,我没有webkit对象

this.ref=this.iab.create(“https://google.com“,”_blank“,”EnableViewPortScale=yes,location=no,hidden=false”);
此.ref.on('loadstop').subscribe(事件=>{
此.ref.executeScript({
代码:“webkit.messageHandlers.cordova_iab.postMessage(JSON.stringify({foo:bar});”
});
});

当我测试我的应用程序时,我使用了命令
爱奥尼亚服务--devapp
并在我的Android手机上使用了应用程序爱奥尼亚devapp。因此,它看起来不是真正的Android原生应用程序。 我引述:

浏览器怪癖 未激发loadstart、loaderror和消息事件


我在我的笔记本电脑上安装了一个Android模拟器,我成功地将postMessage从我的“iframe”传输到了我的“主线程”.

是否要将数据发送到iframe?您正在应用程序中加载的数据。谢谢您的回答。我同意这不是很清楚。我已经对此添加了一个小说明。我想将一些数据从iframe发送到我的“主线程”。