使用Sysdiagnose工具,只需要安装一个证书就可以了

1.证书下载安装。链接: https://pan.baidu.com/s/1TSyEJL34M7nME6TQQo-yaQ  密码: d0c4。把下载好的证书证书安装在被测试电量的手机上。

2.测试时候断开电源,关闭自动亮度

3.触发sysdiagnose诊断。同时按住按音量+和音量-和息屏(唤醒)键1至1.5秒并释放,会触发截图或息屏并有一个短促的振动,前往设置→隐私→分析与改进→分析数据,若同时出现类似如下三个文件则说明触发成功,可以对APP进行操作测试。记录开始时间

4.执行结束记录结束的时间,等待诊断数据手机完成,等待30分中后,前往设置→隐私→分析与改进→分析数据,查找对应时间点触发的系统诊断文件,把sysdiagnose文件同步到Mac上,进行数据分析。

5.分析数据

PLSQL文件中相关的表

表名 内容
PLBatteryAgent_EventBackward_Battery 整机的电量信息,包含电流、电压、温度等信息。(每20秒记录一条数据)
PLBatteryAgent_EventBackward_Battery_UI 剩余电量百分比。(每20秒记录一条数据)
PLIOReportAgent_EventBackward_EnergyModel 整机不同硬件上的详细功耗数据。分别记录了 CPU、GPU、DRAM 等硬件的耗电量。
PLAccountingOperator_Aggregate_RootNodeEnergy 各个 App 的详细耗电数据。记录各个 App 在各个硬件上的耗电量。(每小时更新一次数据)
PLAccountingOperator_EventNone_Nodes 各个硬件对应的 Node ID,以及各个 App 的对应的 Node ID。
PLAccountingOperator_EventNone_AllApps 手机中安装的所有 App 的信息
PLApplicationAgent_EventForward_Application App 运行状态记录。记录各个 App 在某个时间段以什么状态运行。
PLAppTimeService_Aggregate_AppRunTime App 的运行时长统计。(每小时更新一次数据。
PLBatteryAgent_EventForward_LightningConnectorStatus Lighting 接口连接状态。
PLBatteryAgent_EventNone_BatteryConfig 电池的配置信息。包括电池容量、循环计数、电池寿命、电池温度等信息。
PLBatteryAgent_EventNone_BatteryShutdown 电池导致的意外关机记录。
PLCameraAgent_EventForward_Camera 相机使用记录。记录了相机类型和使用相机的 App
PLConfigAgent_EventNone_Config 本机的一些配置信息和一些系统设置。
PLDisplayAgent_Aggregate_UserTouch 屏幕点击计数。每 15 分钟记录一条数据。
PLDisplayAgent_EventForward_Display 屏幕亮度信息。包括流明、尼特、亮度滑竿值等信息。
PLProcessNetworkAgent_EventPoint_Connection 网络连接记录。记录了发起网络连接的 App、地址、端口等信息。
PLXPCAgent_EventPoint_CacheDelete 清除缓存的记录。包括申请的空间大小、清除缓存的耗时、清除的缓存大小、服务名称、紧急程度等信息。

我们可以根据上面的表格,来分析耗电情况,比如:

  • PLBatteryAgent_EventBackward_Battery_UI 可以分析剩余电量曲线
  • PLBatteryAgent_EventBackward_Battery 可以分析整体耗电量和温度变化
  • PLAccountingOperator_Aggregate_RootNodeEnergy 和 PLAccountingOperator_EventNone_Nodes 两张表,可以得到某个 Bundle ID 对应的 App 在各个硬件上的耗电情况。

下面是一些数据获取的SQL语句:

  • 查看APP运行的时间timestamp

    select ID,timestamp,datetime(timestamp, 'unixepoch', 'localtime')as time,BundleID from PLAppTimeService_Aggregate_AppRunTime where BundleID='XXX' order by timestamp

  • 查看APP的NodeID

    select * from PLAccountingOperator_EventNone_Nodes where Name ='XXX'

  • 查看APP的电量测试

    select ID,timestamp,datetime(timestamp, 'unixepoch','localtime')as time,Energy,NodeID,RootNodeID from PLAccountingOperator_Aggregate_RootNodeEnergy where NodeID=XXX order by time

  • 查看APP某个时间点的电量求和

    select datetime(timestamp, 'unixepoch', 'localtime')as time,sum(Energy),NodeID from PLAccountingOperator_Aggregate_RootNodeEnergy where NodeID=XXX and timestamp='XXX'

RootNodeID硬件对照表

RootNodeID 硬件
2 CPU
4 VENC
5 VDEC
6 ISP
7 RestOfSOC
8 GPU
9 DRAM
10 Display
11 WiFi-Data
14 AudioHeadset
15 AudioSpeaker
17 FrontCamera
18 BackCamera
19 Torch
37 BB
38 BB-Voice
47 BB-Pssi
48 GPS
50 Bluetooth
53 WiFi-IdLe
54 APSOCBaseIOReport
55 AudioCodec

参考资料:https://www.jianshu.com/p/bd2c1ce5c02a

iOS的电量测试(Sysdiagnose)相关推荐

  1. IOS app电量测试方法调研

    方法一--硬件检测 通过硬件 PowerMonitor 可以精准地获得应用的电量消耗. 步骤如下: 拆开iOS设备的外壳,找到电池后面的电源针脚. 连接电源监控器的设备针脚 运行应用 测量电量消耗 下 ...

  2. 【腾讯TMQ】iOS电量测试实践

    iOS电量相关问题一直是测试人员头疼的事情,电量测试怎么开展.问题怎么复现和跟进定位.用户反馈电量相关的问题我们如果获取更多的信息等等,一直都没有一个好的解决方案,以至于我们面对电量相关的问题时,总是 ...

  3. ios 获取电量百分比_实战之 IOS 电量获取对比

    背景交代 最近有一款游戏要上线,性能检测虽然在安卓上已经检测通过,但ios上还是第一次检测,尤其是近年来移动端用户越来越重视手机的续航能力,所以我们对游戏的电量消耗等指标的关注程度也越来越重视: 然而 ...

  4. ios 获取电量百分比_iOS 获取电池电量

    由于项目需要,要求获取iOS手机电池电量的详细值以及变化量等信息.所以做了相关的技术调研,实现的方法有很多.所以写了这篇总结,对于当前获取电池电量的方式进行一个整理. 方法一:通过苹果给的api获取 ...

  5. 安卓Android测试工具 和 苹果IOS集成调试测试环境工具(GT)

    安卓Android测试工具 和 苹果IOS集成调试测试环境工具(GT) 什么是GT? GT(随身调)是APP的随身调试平台,它是直接运行在手机上的"集成调试环境"(IDTE, In ...

  6. app专项测试之电量测试

    前段时间,在测试间隙做了个APP耗电量测试的调研,目前我们部门的业务线还没有类似的测试,今天拿出来和大家交流下.本文主要是借助第三方工具(GT和Instrument)来统计被测APP的耗电量,如有需要 ...

  7. Xamarin.iOS真机测试报错

    Xamarin.iOS真机测试报错 错误信息:The MinimumOSVersion inside Info.plist does not include the device version(er ...

  8. MogoH5+基于Hbuilder做ios真机测试

    2019独角兽企业重金招聘Python工程师标准>>> #下载安装MogoH5+脚手架 下载MogoH5+ git clone https://github.com/tyaqing/ ...

  9. 【调试工具】之IOS真机测试

    原文链接:https://blog.csdn.net/SoaringLee_fighting/article/details/82874618 序 本文旨在阐述怎么通过xcode工程进行ios真机测试 ...

最新文章

  1. Learn OpenGL (十二):投光物
  2. 中关村壹号官兰兰:连接AI企业和传统企业,打造硬科技服务联盟 | MEET2020
  3. 2018年跨行学习mysql_2018年,让你的数据库变更快的十个建议
  4. 动态管理配置文件扩展接口EnvironmentPostProcessor
  5. 如何下载一个物种的全部EST序列 | NCBI | 表达序列标签
  6. EFCore之命令行工具
  7. 多重继承_Python 和 Java 基础对比 10 —— 类的封装、继承和多态
  8. python编程入门经典百度云-python电子书学习资料打包分享百度云资源下载
  9. Android平台开发职位招聘要求总结
  10. Ubuntu 20.04部署minikube配置不上阿里云的minikube镜像
  11. 第一章计算机基础知识作业答案,计算机基础作业题1答案
  12. android 清理大师 编程,清理大师 Android v2.3.3
  13. 使用多串口卡后读卡器无法初始化
  14. matlab r2016a破解版安装
  15. 机械工程师CAD2016
  16. 二进制乘法的booth算法
  17. Java模拟ssh交互_java模拟ssh执行shell命令
  18. Eclipse Debug不能热部署代码may be out-of-synch
  19. BCD码指令 AAA DAA AAS DAS AAM AAD
  20. C++:图片数字水印-基于OpenCV+LSB

热门文章

  1. php自助旅游网站平台
  2. 极速安装和体验k8s(Minikube)
  3. 华为云双十一、双十二系列直播圆满收官,助力企业获数智化发展商机
  4. 僵尸进程(Zombie process )
  5. 上货避坑指南 私域上货选品工具 无货源选品上货 采集商品详情数据API分享 详情图 sku信息
  6. 互联网日报 | 得到披露招股书;格力集团35亿投资小米;淘宝村年交易额破万亿;2020北京车展开幕...
  7. linux创建运维账户流程,Linux运维养成记-账户与权限管理
  8. Git:Github镜像网站
  9. 河南省软考报名时间成绩查询河南省教育考试院河南省人事考试网报名入口
  10. ue4 unreal NDisplay插件 简易使用 三折幕 详细...