2017-02-19 114 views
0

我想获得一个蓝牙跟踪设备,如TrackR,Tile,Chipolo等,并编写我自己的应用程序来检测我的设备在Windows 10移动设备上。他们是否以某种方式加密,以便只有他们的应用可以使用它们?“阅读”一个蓝牙跟踪设备

任何人都可以指出我正确的方向吗?或者告诉我,这是不可能的。

+0

一个非常广泛的问题 - 每个BT设备都会有所不同。您需要调查您感兴趣的设备的已发布API。如果未发布,可能是有人对其进行了反向设计?但是......这是StackOverflow的主题。 –

+0

'每个BT设备都会不同' - 你知道吗?也许所有的加密?或者,也许所有的都很简单(虽然它们可能有不同的API,但它们可能基本相同)。感谢你的意见,但似乎你不知道他们的API。也许有人会回来并回答。 – ispiro

+0

感叹。请不要假设我知道,不知道。你的问题是无关紧要的。这不是一个编程问题。 –

回答

2

检测与加密无关。

让我们打电话给其他设备应该检测到“中央”,以及这些其他设备“外设”的主要设备。

希望被检测到的每个外围设备都必须发送广告。有几种广告模式;没有深入细节,这些不同的模式用于允许外设被发现,连接或两者兼而有之。

所有这些广告都是未加密的,所以任何设备都可以“看到”并理解这些广告。中央只需进入扫描模式;在这种模式下,中央监听它可以检测到的任何广告。完成扫描后,所有找到的设备都会显示在列表中。这里没有加密。加密仅在两台设备连接并且至少有一台设备需要加密通信后才会起作用。但这不是查找和识别设备所必需的。

请注意,无需连接即可获得的唯一信息是广告数据(以及可能的附加扫描响应数据)。通常,短设备名称或标识符是广告数据的一部分,以允许识别设备类型。如果设备实现设备信息服务,那么每个信息也可以在没有加密的情况下读取(但您必须先连接并发现该服务)。大多数设备都希望中央知道他们的名字,类型和用途,所以通常这些信息不会被加密。