如何检查蓝牙扫描引起的电池消耗

How to check battery consumption caused by Bluetooth Scans

我有一个 Android 应用程序可以使用 Android 信标库检测 Eddystone 信标。我想测试应用程序引起的电池消耗,以找到最佳的背景和前景扫描率。在“设置”>“应用程序”>“MyBeaconDetectorApp”中,打开蓝牙一个多小时后,电池使用量显示为 0%。我认为应用程序在后台,因此它是 0%。但是,如何检查蓝牙扫描引起的电池消耗。我已将 BackgroundBetweenScanPeriod 设置为 1 分钟。

谢谢

虽然很难直接测量电池消耗,但这是我使用的技术:

  1. 使用安装了数量有限的应用程序的测试设备,这些应用程序将在后台运行 运行。出厂重置后的库存 Nexus 设备是理想选择。

  2. 将电池充电至 100%

  3. 将设备置于飞行模式并打开蓝牙。

  4. 安装您的应用程序 运行在后台启动它。关闭屏幕,并断开设备的 USB 连接器。

  5. 注意开始时间。

  6. 让应用程序 运行 在后台运行至少 8 小时,最好有至少一个信标。

  7. 测量电池电量。与 100% 的增量是消耗百分比。记下这个数字和结束时间。

  8. 查看您的 phone 型号的电池有多少 mAH。将百分比消耗乘以 mAH,然后除以测试时间(以小时为单位)。这会告诉您 phone 在 运行 启动您的应用程序时使用了多少 mA。

接下来,卸载您的应用程序,然后重复上述步骤。这将使您的设备 在没有 您的应用程序 运行 的情况下使用基准电池电量。

最后,从您的应用的 mAH 中减去 mAH 基线运行 测量您的应用使用的额外 mAH。

最后一点:如果您真的在后台每分钟扫描一次(默认为每五分钟一次以节省电池电量),我预计这可能会导致额外的电池消耗。使用上述过程进行测试会告诉您肯定的信息。我很想听听你的结果!