iOS开发之如何优化App的电量

终于有时间整理一下,以前没来的及记录的知识点了,话不多说,开始表演......

程序的耗电主要是四个方面:CPU处理,定位,网络,图像;

对于这四个方面的优化,我们可以这么做:

CPU处理:

1、尽可能降低CPU、GPU的功耗,比如:少用定时器;

2、优化I/O操作(什么,你不懂什么是I/O操作?简单的来说就是对数据的处理,读写操作),比如:不要频繁的写入小数据,而是积累到一定的数量再写入;读写大量的数据可以使用Dispatch_io,GCD内部已经做了优化;数据量比较大的时候,使用数据库;

定位:

1、如果只是需要快速确定用户位置,最好用CLLocationManager的requestLocation方法,定位完成后,会自动让定位硬件断电;

2、如果不是导航应用,尽量不要实时更新位置,定位完毕关闭定位服务;

3、降低定位精度,设置pausesLocationUpdatesAutomatically为YES,这样用户不太可能移动的时候系统高会自动暂停位置更新;

4、尽量不要使用startMonitoringSignificantLocationChanges,优先考虑startMonitoringForRegion;

网络:

1、网络数据相同,使用NSCache进行缓存;

2、使用断点续传,避免因网络失败后重新下载;

3、网络不可用时,不尝试进行网络请求;

4、设置超时时间或提供可取消网络请求的操作;

5、采取批量传输,下载视频流时,尽量一大块一大块的进行下载,广告可以一次下载多个

图像:

1、保证UI真的需要变化时,进行屏幕更新;

2、避免blurs(模糊处理);

节省电量的四个基本原则:

1、Identify:想清楚你需要app在特定时刻需要完成哪些工作,如果是不必要的工作,考虑延后执行或者省去;

2、Optimize:优化app的功能实现,尽可能以更有效的方式去完成功能;

3、Coalesce:合并内容,避免重复;

4、Reduce:减少做重复工作的频率;

 

相关文章:

https://www.jianshu.com/p/f0dc653d04ca

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

hbblzjy

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值