5

我正在尝试将新的Socket API用于 Chrome 扩展,但遇到了一个令人困惑的错误。我的示例应用程序清单如下所示:

{
  "name":"Yet Another Socket App",
  "version":"0.0.1",
  "manifest_version":2,
  "permissions":[
    "experimental", "socket"
  ],
  "app":{
    "launch":{
        "local_path":"index.html"
    }
  }
}

应用程序正在加载(即没有错误警报),但在其条目下方出现警告chrome://extensions'socket' is not allowed for specified package type (theme, app, etc.).

注意: index.html存在并且是一个简单的 HTML 文档(并且chrome.socket确实undefined在其中)。我已经通过chrome://flags. 我v22.0.1229.6 dev在 Ubuntu 上运行 Chrome ( ) 的 Dev 频道。

这是套接字支持中的一个短暂的打嗝(毕竟这是开发通道),还是我以某种方式错误地设置了我的应用程序?另外,我必须卸载 Chrome Stable 才能安装 Dev;是否有可能apt-get purge google-chrome-stable并且rm -rf ~/.config/google-chrome不足以清除稳定通道的每一块?

4

1 回答 1

3

我在尝试从 Google 重新创建此示例时遇到了同样的问题:http: //developer.chrome.com/trunk/apps/app_network.html

Chrome总是说

“权限[1]”的值无效

他们的示例应用程序中提供了正确的清单文件: https ://github.com/GoogleChrome/chrome-app-samples/tree/master/udp

换上permissionsmanifest.json_

"permissions": [
    "experimental",
    {"socket": [
        "udp-send-to"
    ]},
    "app.window"
]

我现在可以socket在 Chrome 23 或更高版本中访问该对象:

var socket = chrome.socket || chrome.experimental.socket;
于 2012-08-28T13:31:19.063 回答