我始终监视并且用户进入我定义的区域我想开始测距并获得InstanceID或Major,Minor值来确定信标是什么,连接到服务器并向用户发送通知 . 如果我可以在后台与服务器进行通信,那将是最好的 . 我使用此示例来实现后台监视:https://altbeacon.github.io/android-beacon-library/samples.html . 我还从这里下载了示例项目:https://github.com/AltBeacon/android-beacon-library-reference以它为基础 .
不幸的是,在此示例中,当用户进入区域时,Activity已启动...我不希望这种情况发生 . 所以我的问题是:是否有可能在背景中放置信标?
在我的情况下也发生了奇怪的事情,因为当我把我的应用程序放在后台方法“didRangeBeaconsInRegion(集合信标,区域区域)”仍然从MainActivity调用但没有找到信标 . 此外,方法的调用次数较少,因为beaconManager处于后台模式 . 当我启动未发生的示例项目时 . 也许是因为我没有monitoringActivity . 我的MainActivity在推出时会立即进行测距 . 当然,我尝试设置与BeaconReferenceApplication示例完全相同的一切 .
顺便说一下,我正在使用Android 6.0.1在Nexus 5上测试我的应用程序
提前感谢您提供任何解决方案!
1 回答
我终于明白了如何做到这一点!实际上我很简单,我从一开始就这样做,但是我犯了一个错误,我一直在使用旧版本的Altbeacon库,这导致了我所有的问题......呃
没关系 . 这是我的代码 . Meybe有人可以使用它;)我通过创建集中的Application类来实现它,该类在进入定义的Region时实现BootstrapNotifier用于后台通知 . 我的类还实现了BeaconConsumer,RangeNotifier接口,这些接口是进行信标测距的必要条件 .