我正在一个项目中,以跟踪送货卡车往返办公室的情况。
虽然我知道RFID可以使用,但我们也在研究带有移动应用程序的蓝牙。理想情况下,一旦驱动程序安装了该应用程序,我们便会为该设备注册一个唯一的ID,然后BT阅读器会在没有任何用户交互的情况下识别电话/目的地何时离开并进入范围。
从Android 6.0发行说明中看来,MAC地址对于应用程序和BT广播而言是隐藏的。 https://developer.android.com/about/versions/marshmallow/android-6.0-changes#behavior-hardware-id
除了安装BT外,还可以对应用程序安装进行用户管理,这可行吗?
有人可以向我指出正确的方向,以确认可以使用哪些标识符吗?
答案 0 :(得分:1)
当我对您的理解正确时,您实际上不想跟踪电话在哪里,而是想知道人/卡车/电话是否通过了某种检查站或登机口?
对于较新的智能手机,您不能依赖可见的MAC。只要不进行配对和绑定,通常就看不到蓝牙经典,并且BLE MAC是随机的。
实际上,正如PaulW11所述,简单的方法是实现一个应用程序,该应用程序以较短的广告间隔进行BLE广告。在此广告中,您可以放置一些自定义数据。这对所有人都是可见的。该ID可以是一些随机数,也可以是您分配的数字。
在大门口,您将实施BLE扫描器,以抓住其附近的所有广告。
这应该很容易实现。
我还想在这里提及缺点:如果有人通过大门,您可能会想念他。带有Android的BLE总是很棘手,您可能会遇到手机上的蓝牙子系统可能已停止工作的情况。
另一方面,如果有人不小心靠近您的大门,您会认为他已离开或返回。条件良好的情况下,附近可能约50 m左右,其他情况下可能只有10m。
更糟糕的是:如果有人“几乎”停留在大门附近,您会偶尔看到。如果每隔3分钟出现一次,这可能会使您的来来去去逻辑混乱。