【问题标题】:Is it possible to connect with estimote beacon without using location permission是否可以在不使用位置许可的情况下与 estimote 信标连接
【发布时间】:2019-08-01 11:40:17
【问题描述】:

我有一个estimote beacon,当用户进入beacon range. 时,我想显示一个notification

查看estimote beacon'sandroid集成文档,发现需要location permission.

Estomote official app 也不起作用,如果未授予位置权限。

我的问题是如何在不询问位置许可的情况下使信标工作,或者如果信标在没有位置许可的情况下无法工作,那么使用信标的原因是什么,或者我错过了一些非常重要的东西。

【问题讨论】:

  • estimote beacon如何连接手机?
  • @VladyslavMatviienko : 我有 Estimote 示例应用程序,它会检测信标位置,如果它在设备范围内。
  • 那没有回答我的问题:how does it connect to the phone? 使用什么?
  • @VladyslavMatviienko : 通过蓝牙,Beacon 发送蓝牙信号,其中包含它的 UDID,如果应用知道收到的 UDID,它可以向用户显示个性化通知。
  • 蓝牙搜索需要位置权限。因此,您不能在没有位置许可的情况下进行蓝牙搜索。搜索不必启用位置,但您必须请求权限

标签: android ibeacon beacon ibeacon-android estimote


【解决方案1】:

Android 6+ 要求应用在运行时获得 COARSE_LOCATION 或 FINE_LOCATION 权限,以便检测蓝牙 LE 信标或进行蓝牙 LE 扫描。 未经许可,操作系统会阻止信标检测。这不是 Estimote 特有的问题 - 它适用于扫描任何蓝牙 LE 设备。

添加此要求是为了保护用户的隐私。理论上,运行时权限对话框让用户清楚地知道应用正在访问用户的位置,并确保用户意识到这一点并同意这种做法。

【讨论】:

  • 感谢@davidgyoung,所以信标只需要位置许可才能使用蓝牙,但它们实际上并不需要任何位置服务来执行它们的操作。
  • 我看到使用beacon 超过geo-fencing 的唯一优势是它提供了比地理围栏更简洁的用户位置。就功能而言,我认为我可以实现所有通过地理围栏提供信标。
  • 检测信标也需要在 Android 6+ 中打开位置信息。如果禁用,所有 BLE 扫描都不会返回任何结果,包括信标。地理围栏的另一个优势是它们可以在 GPS 信号无法到达的建筑物深处工作。
猜你喜欢
  • 1970-01-01
  • 2019-08-19
  • 2019-07-08
  • 1970-01-01
  • 2018-03-16
  • 2019-02-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多