在使用instruments分析一个应用耗能问题之前,可以先参考Xcode的调试指示器,了解如何测试和调试您的应用程序可以帮助您确定潜在的能源问题和需要改进的领域。通过在应用程序运行时记录跟踪消息,活动跟踪还可以更快、更容易地找到bug。
在开发应用程序时Xcode包含了许多诊断应用电量使用情况的数据,Xcode调试导航栏提供了一系列的指示器,可以帮助我们在测试应用程序时分析它的电量使用情况,当运行一个项目的时候这些指示器就会显示出来。
下面开始逐一进行介绍:
一、CPU
监视应用程序并报告其当前和历史CPU使用情况,当应用程序应该具有较低的CPU活动或者应用程序处于空闲状态时出现的峰值可能表示这里可以进行优化。
![](https://i-blog.csdnimg.cn/blog_migrate/b128908bdaff678964ba3f2021b530b2.png)
二、Disk
应用运行状态下提示你磁盘和文件的读写活动,用来识别意外或重复发生的小i/o活动
![](https://i-blog.csdnimg.cn/blog_migrate/e0887178c172a553e3ec620d1cbe76cc.png)
三、Network
显示所有入站和出站的网络流量,找到应用程序直接执行的可自由支配的活动,并考虑将其更新为由系统在更节能的时候执行。
![](https://i-blog.csdnimg.cn/blog_migrate/fec4c030c7395c54163ac545c12b5269.png)
四、Energy Impact
当应用程序运行起来之后它能展示APP电量使用情况的实时信息,并且显示近期耗电量活动的图表。
![](https://i-blog.csdnimg.cn/blog_migrate/bddd3f43533e56abef91d5f8428f76e4.png)
1.Overhead 红色的方块表示系统必须为执行应用程序工作而使用的电量
2.CPU 紫色的方块表示应用程序已经使用了CPU来执行工作
3.Network 橘色的方块表示应用程序已经执行了网络操作
4.Location 黄色的方块表示应用程序已经使用了位置服务功能
5.GPU 绿色的方块表示应用程序使用了GPU来执行图形相关的活动,比如在屏幕上绘制内容或者是播放动画
6.Background 深灰色方块表示应用程序处于后台状态,但仍然保持系统唤醒状态。
以上所有数据信息一同表示应用程序的耗能评级,当用户与应用程序交互时 除非用户进行了复杂的操作,否则电量的使用变化应该是很低的。当用户不与应用程序交互时,电量的消耗应该不会发生变化。