Android 手机是否有像 iPhone 一样的后台蓝牙 BLE 广播

2020-10-07 14:44:02 +08:00
 philon

本人对 Android 及 iOS 不熟,由于项目需要,一个设备通过蓝牙扫描周围的手机,有点类似于 Wi-Fi 探针的功能。

我发现 iOS 系统后台会对外进行 BLE 广播,而 Android 生态下手机厂商太多,尽管 Android 号称支持 BLE 以及 iBeacon,但貌似不是每款手机都能被扫描到。

我的问题很简单: Android 系统本身是否存在个 BLE 广播的后台,还是需要开发 APP 自己进行广播?

5318 次点击
所在节点    Android
5 条回复
rebounce
2020-10-07 16:13:06 +08:00
Android8.0 后,息屏不能。
azh7138m
2020-10-07 17:03:15 +08:00
没有发现 iOS 会在后台做广播
而且 iOS 也不允许应用在后台做 iBeacon 广播
你能搜到只是因为 iOS 的蓝牙没有关,设置里面关掉就搜不到了

回到问题本身
需要自己开发
janus77
2020-10-08 00:50:40 +08:00
蓝牙探针是吧?刚好前几天看了篇文章,还有源码 你可以研究下
www.infoq.cn/article/HRK0oRWhdyV5vU30gWlW
philon
2020-10-08 09:24:15 +08:00
@janus77 感谢你的分享,我想知道的只是 Android 系统自身是否有个蓝牙广播后台。
LLaMA2
2020-10-15 15:39:22 +08:00
BLE 分为 Peripheral 和 Central 模式
对应起来有点类似 Peripheral(Server) 和 Central ( Client )
大于 4.4 的设备可以开启 Peripheral 外围模式
你需要打开手机的 BlueTooth 并给予 ACCESS_COARSE_LOCATION 和 ACCESS_FINE_LOCATION 权限
否则 Central 中心模式的设备无法扫描到你

Peripheral 开启前你需要准备好 BLE 的 BluetoothGattService,和该 service 下的 BluetoothGattCharacteristic,以及 characteristic 下的 BluetoothGattDescriptor

其次 BluetoothGattCharacteristic 分为可读 可写,BluetoothGattDescriptor 分为可读可写可通知可指示

至于 Central 模式,网络上的 Demo 很多

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/712909

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX