1

Android 版 Firefox (fennec) と Android サービスの間で通信する方法を見つける必要があります。解決策の 1 つは、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): メッセージ: ReferenceError: WebSocket が定義されていません

WebSocket は fennec アドオンでサポートされていますか?

4

1 に答える 1

1

WebSockets は Android 版 Firefox で利用できますが、通常のWebSocketコンストラクターはbootstrap.js(Sandbox) または js コード モジュールでは利用できません。これらは DOM ウィンドウが接続されておらず、スタンドアロンの JS であるためです。

ただし、Web ソケットを作成する方法は 2 つあります。

  1. を使用しnew Services.appShell.hiddenDOMWindow.WebSocket(...)ます。(とはいえ、Androidの隠しウィンドウを削除するという話があったのを覚えていますか?!)
  2. やや低レベルの XPCOM コンポーネントnsIWebSocketChannelを使用して実装しnsIWebSocketListenerます。

ところで、Android 版 Firefox のリモート デバッグをチェックしてみてください。

于 2014-06-16T13:55:09.403 に答える