iOS app 怎样进行功耗测试(主要是电量和流量)?

啥玩意儿会耗电耗流量?高CPU,多网络请求等。XCode 的Instrument的Profile可以帮你很多。你可以看到这些选项iOS app 怎样进行功耗测试(主要是电量和流量)?

我一般用Time Profiler看看操作App的时候哪些代码占用了大部分运算时间,如果是我自己写的代码的话,就看看是否有可以优化的地方。特别是大列表滚动加载数据的时候。然后你可以用用Energy Diagnostics 看看电池消耗,这玩意儿我还没玩过,大家懂的可以说一下。关于网络请求优化的,这个需要和后台API一起优化了,尽量减少不必要的请求咯,比如一次API CALL尽量把客户端要用到的数据都返回过来,而不是要通过多个请求去返回,同时最好注意数据分页,不要几万条数据都扔给客户端了。还有关键的就是图片尺寸了,最好客户端需要啥尺寸,服务端就直接给啥尺寸,而不是到客户端上再缩放。
■网友
测试电量一定要在手机上测试,别用数据线连接Mac,手机上选择开发者——Logging——Energy,选择Start Recording就可以测试了。一段时间以后再stop,再用手机连接到电脑的instrument上,import记录就可以了。就可以看到电量的使用情况了。测试电量一定切记不要充着电测试耗电情况。
iOS app 怎样进行功耗测试(主要是电量和流量)?

iOS app 怎样进行功耗测试(主要是电量和流量)?

更加详细的链接,看一下官方文档吧:Measure Energy Impact with Instruments

■网友
之前工作需要,在国内外网站上找了很多功耗优化相关的内容,几乎没有权威又全面的。最后参考苹果的文档整理了一篇文章。涵盖了功耗优化、检测等内容。
内容比较多,就不在重新编辑了,可以去这里看看: http://www.jianshu.com/p/9a5e94e7b7c3

■网友
Xcode升级到8.1之后遇到了诡异的问题:
Instruments版本: 8.1
Template: "Energy Log"
测试设备: iPhone7 (10.0) + iPhone 7Plus(10.0)
问题: "Energy Usgae level"没有获取到数据,template中的其他instrument能够正常显示数据,在我升级Xcode和Instruments到最8.1之前,"Energy Usgae level"能够正常获取数据
看起来"Energy Usgae level"完全失效了
【iOS app 怎样进行功耗测试(主要是电量和流量)?】 补充: 目前经过测试并不是Xcode版本问题,而是iOs版本问题, iOS版本大于等于10无法用Instruments测试电量了


    推荐阅读