从Angular Web应用程序广播事件并在ION应用程序中接收



我有一个IONIC应用程序,它使用InAppBrowser使用我的Angular Web应用程序。我想从 Angular Web 应用程序触发事件并从 IONIC 应用程序打开相机。目前,我正在使用InAppBrowser打开我的Angular Web应用程序。 谁能向我建议实现这一目标的最佳方法是什么?

我尝试了postMessage,Event,window.addEventListener,但没有成功

我需要将我当前的角度网络应用程序集成到 IONIC 移动应用程序中,并将 Cordova 插件与角度网络应用程序一起使用。

您可以尝试实现 postCordovaMessage 必须可用于使用 Cordova 创建的 InAppBrowser 窗口。

在您的APP中添加消息监听器:

const browser = this.inAppBrowser.create('https://.....');
browser.on('message').subscribe(event => {
if (message.data.action === 'openCamera') {
// open camera
}
});

在您的网站上发送消息:

var message = {action: 'openCamera'};
if (webkit.messageHandlers.cordova_iab) { 
webkit.messageHandlers.cordova_iab.postMessage(JSON.stringify(message));
}

如果您的网页只需要为网页功能捕获图像,那么您可以尝试对输入元素使用 HTML5 捕获属性:

<input type="file" accept="image/*" capture >

最新更新