gpt4 book ai didi

javascript - InAppBrowser,打开窗口,发布消息

转载 作者:行者123 更新时间:2023-11-29 17:47:56 24 4
gpt4 key购买 nike

是否可以在 InAppBrowser 中打开一个网站,让该网站使用 window.open 打开另一个窗口,然后向另一个窗口发送消息(反之亦然)?

最佳答案

Postmessage 已在未发布的版本上实现。您可以从 inAppBrowser 的 git 页面上 fork 最新的开发版本:https://github.com/apache/cordova-plugin-inappbrowser/在构建它之前,请记住删除当前组件并添加最新的开发版本以供使用。如其文档中所述,您可以像这样发送邮件:

inAppBrowserRef.executeScript({ code: "\
var message = 'this is the message';\
var messageObj = {my_message: message};\
var stringifiedMessageObj = JSON.stringify(messageObj);\
webkit.messageHandlers.cordova_iab.postMessage(stringifiedMessageObj);"
});

或者从 inAppBrowser 的应用内部,它是这样的:

  const message = 'message'
const messageObj = {message: message}
const stringifiedMessageObj = JSON.stringify(messageObj)
if (window.webkit && Window.webkit.messageHandlers) {
console.log('postmessage call on webkit')
window.webkit.messageHandlers.cordova_iab.postMessage(stringifiedMessageObj)
}

你可以像这样在 cordova 中收听它:

this.inAppBrowserRef.on('message').subscribe((event) => {
console.log(' postmessage received')
const postObject:any = event
if(postObject.data.message){
console.log(postObject.data.message)
}

})

关于javascript - InAppBrowser,打开窗口,发布消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47330075/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com