BLE扫描面临着棉花糖向前的显着差异,要求设备的位置为ON。从技术上讲,我没有看到为什么需要位置来扫描BLE设备的正当理由。为什么谷歌会这样做?
答案 0 :(得分:5)
问:为什么Google会这样做?
答:因为BLE扫描通常用于确定用户使用蓝牙LE信标的位置。
我在谷歌I / O 2015的Q& A会议上与谷歌工程师讨论了这个问题,但仍未发布更改。当时,我担心的是不得不要求蓝牙LE管理员权限来扫描位置信标。对我来说,这是一个问题,因为用户了解我的应用需要找到用户的位置,但不明白为什么需要管理蓝牙。
工程师的回答是,在Android M中需要使用位置许可(和位置)才能使用户更清楚。不幸的是,从我的角度来看,仍然需要蓝牙管理员权限。
您当然可以不同意Google的决定。但推理很清楚。如果应用程序可以扫描蓝牙设备并且可以读取其MAC地址或其他标识符,则还可以确定用户的位置,如果应用程序开发人员知道这些扫描设备中的某些位置。
为什么相同的位置权限逻辑不适用于扫描WiFi或Bluetooth Classic(两者都允许相同的事情)不太清楚。也许只是谷歌准备加入带有Eddystone标准的蓝牙LE信标游戏。
更正:WiFi扫描需要位置权限。