IOS:手机锁定时iBeacon扫描频率?
Posted
技术标签:
【中文标题】IOS:手机锁定时iBeacon扫描频率?【英文标题】:IOS: iBeacon scanning frequency when phone is locked? 【发布时间】:2015-06-10 23:01:37 【问题描述】:如果 iBeacon 开始发射(100 毫秒),锁定的 iPhone 需要多长时间才能检测到它?假设 iPhone 非常接近正在发射的 iBeacon,但我的应用甚至没有在后台运行。
换句话说,当 iPhone 被锁定时,LBE 扫描频率是多少?
【问题讨论】:
【参考方案1】:我们在 Radius Networks 对此主题进行了大量研究。答案很复杂,但执行摘要是它们有两层检测:
硬件加速:第一个注册手机上前 30 个信标区域的信标应用程序会获得硬件加速检测。他们可以在大约 90% 的时间内在 5 秒内进行背景检测。
软件扫描:随后注册的信标区域在软件允许的情况下得到检测。如果没有其他应用程序在测距,这是固定的 15 分钟间隔。统计数据显示,这些地区的平均检测时间为 7.5 分钟。 最长为 15 分钟。
不幸的是,没有已知的方法可以判断您的应用将获得哪一层。相应地计划。
在这里阅读更多:
http://developer.radiusnetworks.com/2015/04/21/max-beacon-regions-ios.html
http://developer.radiusnetworks.com/2014/03/12/ios7-1-background-detection-times.html
【讨论】:
因此,鉴于您的回答,为了在几秒钟内检测到 iBeacon(硬件加速),它需要在手机的前 30 个 iBeacon 区域内注册,并且手机需要iPhone 5 或更高版本。谢谢! 我相信它也可以是iPhone 4S 您是否在 android 手机上运行过这些测试?我想知道Android手机锁定时信标的BLE扫描频率和平均检测时间。谢谢! 幸运的是,Android 信标检测代码是开源的(至少与 Android Beacon 库一起),因此您无需进行任何逆向工程!默认情况下,在 Android 4.3.x-4.4.x 上,后台检测最多在 5 分钟(平均 2.5 分钟)内完成,而在 Android 5.x 上则在 5 秒内完成。见这里:altbeacon.github.io/android-beacon-library/battery_manager.html【参考方案2】:文档似乎并没有具体说明扫描时间,我觉得可以找到的大部分信息都是轶事。
根据我的个人研究和经验,当应用程序处于后台或不活动状态时,信标扫描会因 iPhone 的电池电量和其他各种因素而异。在大多数情况下,我已经确定应该在几秒钟内进行区域检测。
话虽如此,我注意到当手机在使用中、从口袋中取出等时,它的速度会更快一些。这可能是由于手机在移动时,扫描速度会增加到让用户快速了解并准备应用程序以供使用。
【讨论】:
给出一个粗略的概念,您估计 iBeacon 会在 5 秒的时间间隔内被检测到的时间百分比是多少? 这真的取决于。如果您在信标范围内或正在使用手机时,我会说大约 90-95% 的时间会从口袋里拿出手机。如果它在锁定模式下留在口袋里,可能是一半。以上是关于IOS:手机锁定时iBeacon扫描频率?的主要内容,如果未能解决你的问题,请参考以下文章
Cordova:在后台模式下扫描 iBeacons / BLE(iOS 和 Android)