我遵循此引用 here我想知道
- 当我进入信标区域或者我已经在信标区域并且我的设备检测到信标信号时,每次都可以启动我的应用程序。因为现在 boostrapnotifier 类在电源连接改变时仍然会召回
2.能否定义信标区域的半径,比如5米。因为现在半径对于我的用例来说太宽了。
最佳答案
一般来说这是可能的,是的。
RegionBootstrap
类旨在自动将您的应用程序启动到后台以扫描信标,并在您进入/退出信标区域时发送回调。由于操作系统可能会终止您的应用程序以节省内存,因此该库旨在重新启动应用程序,以便其后台扫描服务可以在以下几种情况下继续运行:
- 在 5 分钟内被 Android 杀死
AlarmManager
. - 如果上述方法失败,则进行电源连接/断开操作。
- 在手机开机时。
根据您提到的引用,此行为应该是自动的。
虽然您不能定义Region
的半径,您可以添加执行类似操作的过滤逻辑。 一旦您收到 didEnterRegion
的回调, 开始对该区域的信标进行测距。在测距回调中,如果您看到 beacon.getDistance() < 5.0
您可以执行您希望仅当信标距离不到五米时才发生的逻辑。
关于android - 每次检测到信标信号时自动启动应用程序信标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36880175/