iOS:如何确定iBeacon广播的功耗?

iOS:如何确定iBeacon广播的功耗?,ios,ios7,bluetooth-lowenergy,ios8,ibeacon,Ios,Ios7,Bluetooth Lowenergy,Ios8,Ibeacon,上下文:我正在开发一个应用程序,我们正在考虑使用iBeacon来识别附近运行该应用程序的其他人。在应用程序运行的任何时候,设备都充当iBeacon;当用户执行特定操作时,他们的设备将在iBeacons附近移动,以识别附近的其他设备 我试图弄清楚这会对电池产生什么样的影响,以iBeacon的形式持续播放。它应该是最小的(我的意思是,蓝牙低能量的全部意义在于它是低能量的,对吧?),但是如果没有两个相同的设备并排运行几个小时,一个广播,一个不广播,我不确定如何确定它会对电池寿命产生多大的影响 我尝试在

上下文:我正在开发一个应用程序,我们正在考虑使用iBeacon来识别附近运行该应用程序的其他人。在应用程序运行的任何时候,设备都充当iBeacon;当用户执行特定操作时,他们的设备将在iBeacons附近移动,以识别附近的其他设备

我试图弄清楚这会对电池产生什么样的影响,以iBeacon的形式持续播放。它应该是最小的(我的意思是,蓝牙低能量的全部意义在于它是低能量的,对吧?),但是如果没有两个相同的设备并排运行几个小时,一个广播,一个不广播,我不确定如何确定它会对电池寿命产生多大的影响

我尝试在仪器中使用能量诊断配置文件,但对于蓝牙,它只是打开或关闭。仅当我在设备上禁用/启用蓝牙时,此选项才会更改。启动或停止iBeacon广播不会改变任何事情。在已经运行的蓝牙硬件上,作为iBeacon进行广播似乎不太可能增加零开销,但仪器并没有给我足够的信息来确定这一点


有什么想法吗?

在制作Android Beacon库的过程中,我必须找到一种在该平台上进行类似测试的方法。我使用的技术足够强大,应该也适用于iOS

I.将你的手机置于一种与你的应用程序无关的状态

  • 卸载或杀死任何可能在后台运行的应用程序
  • 禁用3G/Wifi(防止操作系统数据传输使用电池)
  • 禁止您的屏幕进入睡眠状态(永远)
  • 将电池充电至100%
  • 二,。测量应用程序作为信标传输时消耗电池的电量:

  • 启动你的应用程序并使其作为信标传输
  • 断开手机与充电器的连接,并记录时间
  • 等待几个小时直到电池电量不足。记录自上一步以来经过的时间
  • 记录电池电量(例如10%)
  • 三、 将手机充电至100%后,进行基线测量:

  • 在应用程序未作为信标传输的状态下启动应用程序
  • 断开手机与充电器的连接,并记录时间
  • 等待的时间与步骤II(3)中的时间完全相同
  • 记录电池电量
  • III(4)和II(4)之间电池电量的差异在于,当作为信标传输时,您的手机比基线使用了多少额外电量


    是的,这项技术需要时间——但是在一夜之间运行测试,您可以在48小时内得到答案。(虽然你会连续两个早上电池没电!)

    我每天都会用许多不同的手机进行这样的电池测试,我还要补充一点,每部手机都是不同的,甚至同一部手机在多次测试中也会有所不同。你越是运行测试并将结果取平均值,就越有可能准确预测一段时间内的平均电池消耗量。请注意,不可能在后台充当iBeacon-是的,我只指望它在前台播放,这样我就不用太担心它的功耗了。显示器将使用更多的电池