WebSocket在Firefox中支持Android插件吗?

Is WebSocket supported in Firefox for Android addons?

本文关键字:插件 Android 支持 Firefox WebSocket      更新时间:2023-09-26

我需要找到一种方法在Firefox for Android (fennec)和我的Android服务之间进行通信。其中一个解决方案是使用WebSockets进行通信代码:

var ws = new WebSocket("ws://localhost:8887/");
ws.onopen = function() {
  console.log("SENDING");
  ws.send("Hello messsage");
} 

06-16 13:14:10.099: I/Gecko(8055): Message: ReferenceError: WebSocket is not defined

在fennec插件中支持WebSocket吗?

WebSocket s在Firefox for Android上可用,但是通常的WebSocket构造函数在bootstrap.js (Sandbox)或js代码模块中不可用,因为这些没有附加的DOM窗口,而是独立的js。

但是,仍然有两种方法可以创建web套接字:
  1. 使用new Services.appShell.hiddenDOMWindow.WebSocket(...)。(虽然,我记得在某些时候有讨论删除Android的隐藏窗口?!)
  2. 使用较低级别的XPCOM组件nsIWebSocketChannel并实现nsIWebSocketListener

顺便说一句,你可能想要查看远程调试Firefox for Android.