每次检测到信标信号时自动启动应用信标

时间:2016-04-27 04:13:18

标签: android bluetooth bluetooth-lowenergy ibeacon android-bluetooth

我遵循此引用here,我想知道

  1. 当我进入信标区域或者我已经在信标区域并且我的设备检测到信标信号时,每次都可以启动我的应用程序。因为现在boostrapnotifier类在电源连接改变时仍然记得
  2. 2.我可以定义信标区域的半径,例如5米。因为现在半径对我的用例来说太宽了。

1 个答案:

答案 0 :(得分:0)

总的来说,这是可能的,是的。

RegionBootstrap课程旨在将您的应用自动启动到后台以扫描信标,并在您进入/退出信标区域时发送回调。由于操作系统可能会终止您的应用以节省内存,因此该库旨在重新启动应用,以便其后台扫描服务可以在以下几种条件下继续运行:

  1. 使用Android AlarmManager杀死后5分钟内。
  2. 如果上述操作失败,请进行电源连接/断开操作。
  3. 电话启动。
  4. 根据您提及的参考,此行为应该是自动的。

    虽然您无法定义Region的半径,但您可以添加类似功能的过滤逻辑。一旦您收到didEnterRegion的回调,开始测量该地区的信标。在测距回调中,如果您看到beacon.getDistance() < 5.0,只有当信标距离不到五米时,您才能执行您想要发生的逻辑。