如何成功定义chrome.bluetooth?

时间:2015-04-24 16:29:34

标签: javascript google-chrome bluetooth bluetooth-lowenergy

我正在寻找一个用于镀铬的蓝牙低能耗物体的最小工作示例:

chrome.bluetooth

返回

以外的内容
undefined

在运行时来自javascript。

我尝试过manifest.json的各种形式,包括:

{
  "name": "Bluetooth Low Energy Test App",
  "description": "App testing the chrome.bluetoothLowEnergy API",
  "version": "0.1",
  "app": {
    "background": {
      "scripts": ["background.js"]
    }
  },
  "bluetooth": {
    "low_energy": true
  }
}

{
  "name": "Bluetooth Low Energy Test App",
  "description": "App testing the chrome.bluetoothLowEnergy API",
  "version": "0.1",
  "app": {
    "background": {
      "scripts": ["background.js"]
    }
  },
  "bluetooth": {}
}

{
    "name": "Bluetooth Low Energy Test App",
    "description": "App testing the chrome.bluetoothLowEnergy API",
    "version": "0.1",
    "app": {
        "background": {
            "scripts": ["background.js"]
        }
    },
    "bluetooth": {
        "profiles": [
            "00001101-0000-1000-8000-00805f9b34fb" // array of uuids
        ]
    }
}

但这些都不会在javascript控制台中产生一个有效的chrome.bluetooth实例。

我已经在Mac OS X和ChromeOS上的Chrome 42和44上测试了这一功能,并启用了蓝牙功能。两台机器都打开了蓝牙,可以看到BTLE设备。

chrome.bluetooth可以在任何平台上使用任何版本的Chrome吗?

2 个答案:

答案 0 :(得分:0)

我从不使用此api但请查看 developer.chrome.com/apps/manifest/bluetooth

自Chrome 37以来, developer.chrome.com/apps/bluetoothLowEnergy developer.chrome.com/apps/bluetoothSocket

这是(我认为你在寻找什么)一个更好的例子和如何使用它的解释(获取设备,发现设备等的例子)Good stuff

其他示例应用

github.com/armansito/ble-battery-service-demo/blob/master/script.js github.com/GoogleChrome/chrome-app-samples/tree/master/samples/bluetooth-samples/device-info-demo

对于纯文本链接感到抱歉,粘贴超过2的声誉没有...

答案 1 :(得分:0)

缺少的链接是manifest.json描述的HTML和JavaScript必须作为chrome扩展安装。实现此目的的最简单方法是从github下载应用程序的zip,将其解压缩到下载,然后:

  1. 点击菜单/更多工具/扩展程序
  2. 点击开发者模式复选框
  3. 点击加载解压缩的扩展程序
  4. 选择HTML / CSS / JSON的解压缩文件夹
  5. 转到开发者工具
  6. 检查chrome.bluetooth实例
  7. 检查chrome.bluetoothLowEnergy实例
  8. 在我的chromebook上,无论我使用哪种版本的chrome,都会定义所有这些。

    我正在运行Acer C720P。

    chrome扩展程序对我来说是缺失的链接。我应该从manifest.json中知道。

    我正在考虑向chrome.bluetooth和chrome.bluetoothLowEnergy的文档提出拉取请求,以提及扩展要求,因为这对我来说并不明显,但我认为这源于本地文件系统所需的沙盒与远程URI。考虑到GPS芯片组等的行为,你没有得到关于蓝牙访问的提示似乎有点奇怪。