我正在参加「初夏创意投稿大赛」详情请看:初夏创意投稿大赛
在【# 夏天来了,iOS开发者们该如何减少App耗电?(上)】中,我们已经对如何减少耗电有了全面的了解。
接下来我们继续了解如何使用调试工具来直观感受优化后的效果。(没有优化指标你说优化了也没人信呀😂)
运行项目后,选中这个小图标(Xcode版本不同,图标也不一样),可以查看你的 app 在设备的 CPU、内存、电量使用、硬盘、网络的使用情况。点击 Energy Impact 查看电量情况。
左上角的半圆环分为三部分,代表的是 app 的总体上的平均消耗电量评级,
low(绿色区域)、high (黄色区域)、very high(红色区域)。我们可以通过这个大致了解app电量的使用情况。
比较 理想 的状态就是 app 处于 low或者high 状态。但是通常情况下,app 会处于 high、甚至very high 状态。所以我们需要更深入地知道究竟哪一部分的功能导致耗电量占比大。
右上角的饼状图代表了耗电的几个部分,包括CPU、Network、Location、GPU、Overhead。从这里可以比较直观的感受哪些方面耗电占比较大。
中间的柱状图可以清晰的看到每一时刻影响电量因素的变化,这也许能帮助你快速的定位问题。
当你需要更加细致的排查问题时,你可以从以下 CPU、网络、定位这几个方面去排查分析,点击Time Profiler、Network Profiler、Location Profiler这三个按钮的其中之一,Xcode 会帮你断开调试连接,并启动 Instruments 来分析 app 性能。
比如点击 Time Profiler,可以帮助查看你的方法耗时情况,从中找出最耗时的方法,然后优化。
新版Xcode都会打开Instruments,我们可以在Instruments中右上角的 + 按钮选择所需要的监测项。
电量 Debug场景
通常情况:
- App 启动时、App 空闲时、App 在后台中
应用特殊场景:
- 导航类App:搜索定位、获取方向、导航;
- 直播类App:直播参数调校(视频流质量、帧数、码率)
- 社交类APP:
I / O