繁体   English   中英

重新启动浏览器后,hiddenDOMWindow失败

[英]hiddenDOMWindow failed after browser restart

安装扩展后,此代码可以正常工作,但是当我重新启动浏览器时,它将失败。 调用启动函数有什么区别:

安装时

开始时

码:

function startup(aData, aReason) {
_webSocket = new Services.appShell.hiddenDOMWindow.WebSocket("ws://localhost:8887/");
...
}

错误:[JavaScript警告:“ WARN addons.xpi:在screen-capture@smail.com上运行引导方法启动时发生异常:[异常...”,组件返回失败代码:0x80004005(NS_ERROR_FAILURE)[nsIAppShellService.hiddenDOMWindow]“ nsresult:” 0x80004005(NS_ERROR_FAILURE)“位置:” JS框架::资源://gre/modules/XPIProvider.jsm-> jar:file:///data/data/org.mozilla.firefox/files/mozilla/lmwz0qwc.default/ extensions/screen-capture@smail.com.xpi!/bootstrap.js :: SmartScreencap.connect_ws ::第89行“数据:否]” {文件:“资源://gre/modules/XPIProvider.jsm-> jar: file:///data/data/org.mozilla.firefox/files/mozilla/lmwz0qwc.default/extensions/screen-capture@smail.com.xpi!/bootstrap.js“行:89}]

问题在于,当function startup(aData, aReason)时,不会创建Services.appShell.hiddenDOMWindow。 因此,解决方案是将窗口侦听器添加到启动函数win.addEventListener('UIReady', function() { ... Services.appShell.hiddenDOMWindow.WebSocket//call function here ... }, false); 并从回调函数调用隐藏窗口。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM