我有一个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 >