我们希望在我们的应用程序中加入信标技术,以创建用户参与屏幕关闭事件。
在目前的使用案例中,我们假设最终用户将不断移动。
到目前为止,我们测试了两种不同的方法。
另外:在iOS上使用附近消息我们有所需的行为:如果应用和同时使用附近消息,应用会发现信标API 已配置为后台使用。
因此,我们问:
修改: 在进一步阅读时,我们得出的结论是,正确使用BLE信标扫描对电池的影响最小(强调正确,我们将不得不改变我们方面的启发式方法),请参阅:this。 那么问题仍然存在:为什么我们不能在附近的api 中进行背景扫描而没有 附近消息自己的通知,以便我们可以断言用户在灯塔附近通过?引起我们兴趣的是,这在iOS上运行得很好......
答案 0 :(得分:2)
Nearby API会根据其选择的时间表进行扫描,包括事件屏幕。 您无法灵活地自定义应用的附近扫描规则,因为它旨在成为针对手机上所有应用运行的服务。使用“附近”时,您必须接受此限制。
Android Beacon Library是开源的,可以在您扫描时灵活配置。如果您发现配置使用过多的电池,您可以调整此项。默认设置是为了在电源使用和快速检测之间进行良好的权衡而设计的,因此建议使用这些设置。如果您发现默认设置不适合您,则可以通过多种不同的方式进行设置。最简单的方法是调整其scanPeriod和BetweenScanPeriod作为背景。但是还有很多其他方法可以自定义扫描行为。
然而,您应该注意,"不断安排扫描" (如您的问题所述)如果处于低延迟模式,将消耗大量电量。 Android Beacon库的默认设置是在低功耗模式下进行持续扫描,此时应用程序位于后台并且没有信标。在大多数设备上,这会在5秒内产生检测,并且合理的功率使用类似于电池待机。
如果不了解您在Android Beacon Library中使用的配置,现有的测试条件以及目睹的耗电量,很难提供更多建议。如果您能提供这些信息,我可能会提供更多帮助。
完全披露:我是Android Beacon Library开源项目的首席开发人员。