iOS收藏

iOS耗电量检测与优化

2019-05-31  本文已影响2人  彭磊PL

一、耗电量检测

1、进入手机"设置"->"电池",可以直观的看出来手机应用的耗电情况。

image.png
image.png

2、使用Xcode打开你的工程,然后插上手机,使用真机running项目(必须是真机),然后command+6,点击Energy Impact

image.png

3、使用Instrument的Energy Log

第一步:打开手机设置,点击“开发者”


image.png

第二步:点击Logging


image.png
第三步:勾选Energy,并点击startRecording
image.png

第四步:运行需要测试的APP(确保手机消耗的是手机自身的电池),运行3-5分钟,在进入手机设置点击stopRecording


image.png
第五步:使用Xcode,把手机和Xcode相连,并打开instruments中的Energy Log,点击工具栏中import Logged Data from Device
image.png
第六步:得到了电池损耗日志

耗电量优化

一、代码层面

1、合理使用NSDateFormatter和NSCalendar这种高开销对象

static NSDateFormatter *cachedDateFormatter = nil;

+ (NSDateFormatter *)cachedDateFormatter {

if (!dateFormatter) {

dateFormatter = [[NSDateFormatter alloc] init];


[dateFormatter setDateFormat: @“YYYY-MM-dd HH:mm:ss”];

}

return dateFormatter;

}

2、不要频繁的刷新页面,能刷新1行cell最好只刷新一行,尽量不要使用reloadData。

3、选择正确的集合

4、少用运算获得圆角,不论view.maskToBounds还是layer.clipToBounds都会有很大的资源开销,必须要用圆角的话,不如把图片本身做成圆角

5、懒加载,不要一次性创建所有的subview,而是需要时才创建

6、重用

7、图片处理

8、cache,cache,cache(缓存所有需要的)

9、尽量少用透明透明或半透明,会产生额外的运算

10、使用ARC减少内存食物,dealloc需要重写并对属性置为nil

11、避免庞大的xib,storyBoard,尽量使用纯代码开发

CPU层面

1、Timer的时间间隔不宜太短,满足需求即可

2、线程适量,不宜过多,不要阻塞主线程

3、优化算法,减少循环次数

4、定位和蓝牙按需取用,定位之后要关闭或降低定位频率

上一篇 下一篇

猜你喜欢

热点阅读