用户通过 Beacons 参与屏幕关闭事件
User engagement with Screen-Off events with Beacons
我们想在我们的应用程序中加入信标技术,让用户参与屏幕关闭事件。
在当前用例中,我们假设最终用户会不断移动。
到目前为止,我们已经测试了两种不同的方法。
- Kontakt SDK/Android 信标库 以便不断扫描信标。使用 UUID(假设我们使用的是 Eddystone),我们可以将它与我们为后端检索到的缓存消息相关联。然而,这最终会消耗大量电池。
- 附近 Messages/Nearby 意识 这有潜力,因为它有一个信标仪表板可以轻松配置每个信标上的附件,并且它有 "same" 实现在 iOS 和 Android 上。但是,在阅读文档和多次测试后,如果我们关闭屏幕,我们将无法检索信标附件。唯一可能的方法是让用户在信标前停留 3 分钟(取决于 smart-phone 和能量设置),这违背了我们的假设,即用户在不断移动,所以当用户不在信标附近时,可能会触发扫描。
此外:在 iOS 上使用 附近消息 我们得到了预期的行为:应用程序会在使用 附近消息[= 时发现信标37=] 如果应用程序和 API 都配置为后台使用。
因此,我们问:
- 有没有办法在屏幕关闭事件中使用 Nearby API?喜欢不断安排扫描?
- 我们还有哪些其他替代方案可以在 iOS 和 Android 之间跨平台使用? (这样我们就可以尝试确保平台之间的行为相似)
编辑:
进一步阅读后,我们得出结论,如果正确使用 BLE 信标扫描对电池的影响最小(强调正确,我们将不得不改变我们这边的启发式),参见:this。
那么问题仍然存在:为什么我们不能在附近 api 没有 Nearby Messages 自己的通知中进行后台扫描,以便我们可以断言用户经过信标附近吗?令我们感兴趣的是,这在 iOS...
上工作得很好
Nearby API 按其选择的时间表进行扫描,包括屏幕事件。 您无法灵活地为您的应用程序自定义附近的扫描规则,因为它被设计为为 phone 上的所有应用程序运行的服务。使用附近时,您必须接受此限制。
Android Beacon 库是开源的,允许灵活配置扫描时间。如果您发现您的配置对您的用例来说耗电过多,您可以调整这个。默认设置旨在在功耗和快速检测之间取得良好的折衷,因此建议使用这些设置。如果您发现默认设置对您不起作用,您可以通过多种不同的方式进行设置。最简单的方法是调整其背景的 scanPeriod 和 betweenScanPeriod。但是还有许多其他方法可以自定义其扫描行为。
但是,您应该注意,如果处于低延迟模式,"constantly scheduling a scan"(如您的问题中所述)会消耗大量电量。 Android Beacon 库默认是在 low power 模式下持续扫描,当应用程序处于后台且周围没有信标时。在大多数设备上,这会在 5 秒内产生检测结果,并且合理的功耗类似于电池待机。
如果不了解您使用的 Android 信标库的配置、适当的测试条件以及目睹的功耗情况,很难提供更多建议。如果你能提供这些信息,我也许能提供更多帮助。
完全披露:我是 Android Beacon Library 开源项目的首席开发人员。
我们想在我们的应用程序中加入信标技术,让用户参与屏幕关闭事件。
在当前用例中,我们假设最终用户会不断移动。
到目前为止,我们已经测试了两种不同的方法。
- Kontakt SDK/Android 信标库 以便不断扫描信标。使用 UUID(假设我们使用的是 Eddystone),我们可以将它与我们为后端检索到的缓存消息相关联。然而,这最终会消耗大量电池。
- 附近 Messages/Nearby 意识 这有潜力,因为它有一个信标仪表板可以轻松配置每个信标上的附件,并且它有 "same" 实现在 iOS 和 Android 上。但是,在阅读文档和多次测试后,如果我们关闭屏幕,我们将无法检索信标附件。唯一可能的方法是让用户在信标前停留 3 分钟(取决于 smart-phone 和能量设置),这违背了我们的假设,即用户在不断移动,所以当用户不在信标附近时,可能会触发扫描。
此外:在 iOS 上使用 附近消息 我们得到了预期的行为:应用程序会在使用 附近消息[= 时发现信标37=] 如果应用程序和 API 都配置为后台使用。
因此,我们问:
- 有没有办法在屏幕关闭事件中使用 Nearby API?喜欢不断安排扫描?
- 我们还有哪些其他替代方案可以在 iOS 和 Android 之间跨平台使用? (这样我们就可以尝试确保平台之间的行为相似)
编辑: 进一步阅读后,我们得出结论,如果正确使用 BLE 信标扫描对电池的影响最小(强调正确,我们将不得不改变我们这边的启发式),参见:this。 那么问题仍然存在:为什么我们不能在附近 api 没有 Nearby Messages 自己的通知中进行后台扫描,以便我们可以断言用户经过信标附近吗?令我们感兴趣的是,这在 iOS...
上工作得很好Nearby API 按其选择的时间表进行扫描,包括屏幕事件。 您无法灵活地为您的应用程序自定义附近的扫描规则,因为它被设计为为 phone 上的所有应用程序运行的服务。使用附近时,您必须接受此限制。
Android Beacon 库是开源的,允许灵活配置扫描时间。如果您发现您的配置对您的用例来说耗电过多,您可以调整这个。默认设置旨在在功耗和快速检测之间取得良好的折衷,因此建议使用这些设置。如果您发现默认设置对您不起作用,您可以通过多种不同的方式进行设置。最简单的方法是调整其背景的 scanPeriod 和 betweenScanPeriod。但是还有许多其他方法可以自定义其扫描行为。
但是,您应该注意,如果处于低延迟模式,"constantly scheduling a scan"(如您的问题中所述)会消耗大量电量。 Android Beacon 库默认是在 low power 模式下持续扫描,当应用程序处于后台且周围没有信标时。在大多数设备上,这会在 5 秒内产生检测结果,并且合理的功耗类似于电池待机。
如果不了解您使用的 Android 信标库的配置、适当的测试条件以及目睹的功耗情况,很难提供更多建议。如果你能提供这些信息,我也许能提供更多帮助。
完全披露:我是 Android Beacon Library 开源项目的首席开发人员。