用信标与筛选事件的用户参与



我们想将信标技术合并到我们的应用中,以创建用户参与到屏幕上的事件。

在当前用例中,我们假设最终用户将处于恒定运动。

到目前为止,我们已经测试了两种不同的方法。

  • kontakt SDK/Android Beacon Library 为了不断扫描信标。使用UUID(假设我们正在使用Eddystone),我们可以将其与已为后端检索的缓存消息相关联。但是,这最终会吃很多电池。
  • 附近的消息/附近的意识它具有潜力,因为它具有信标仪表板,可以轻松配置每个信标上的附件,并且在iOS和Android上都具有"相同"的实现。但是,在阅读了文档并经过大量的测试之后,如果我们关闭了屏幕,我们将无法检索信标附件。唯一可能的方法是让用户仍在信标前3分钟(取决于智能手机和能量设置),并且用户不断移动违反我们的前提,因此扫描可能会被触发当用户不在信标附近时。

另外:在iOS上使用附近消息我们有所需的行为:如果应用程序和API 已配置为背景使用。

因此,我们问:

  • 是否有一种方法可以将附近的API与筛选事件一起使用?就像不断安排扫描吗?
  • 我们还有哪些其他选择可以在iOS和Android之间使用跨平台?(以便我们可以尝试确保平台之间的类似行为)

编辑:进一步阅读后,我们得出的结论是,BLE信标扫描正确使用时对电池的影响最小(重点是正确地强调了我们一边的启发式方法),请参阅:此。然后仍然存在问题:为什么如果没有 附近消息自己的通知,我们为什么不能在附近的API 中进行背景扫描,以便我们可以断言用户在信标附近通过?吸引我们的是,这在iOS上可以正常工作...

附近的API扫描其选择的时间表,包括事件的屏幕。您没有灵活的应用程序为您的应用程序定制附近的扫描规则,因为它旨在为手机上所有应用程序运行的服务。使用附近时,您必须接受此限制。

Android Beacon库是开源的,允许扫描时的灵活配置。,如果您发现配置使用过多的电池,则可以调整此情况。默认设置是为了在电源使用和快速检测之间进行良好的权衡而设计的,因此建议使用这些设置。如果您发现默认设置对您不起作用,则可以将其设置多种不同的方法。最简单的方法是为背景调整其scanperiod和betweenscanperiod。但是还有许多其他方法可以自定义其扫描行为。

但是,您应该注意,如果在低延迟模式下,"不断安排扫描"(如您的问题中所述)将消耗大量功率。当应用在后台且没有信标时,Android Beacon库默认值是在低功率模式下进行恒定扫描模式。在大多数设备上,这会在5秒内产生检测,并且合理的功率使用类似于单元格。

很难在不知道与Android Beacon库,测试条件以及见证了多少功耗的情况下提供更多建议。如果您可以提供此信息,我也许可以提供更多帮助。

全面披露:我是Android Beacon库开源项目的主要开发人员。

最新更新