美文网首页android移动测试
android待机时耗电量影响因素总结

android待机时耗电量影响因素总结

作者: 白天才痴 | 来源:发表于2016-02-26 15:54 被阅读437次

    我们在做app耗电量测试时,重点关注的是待机时的耗电情况,那么影响待机耗电量的因素有哪些呢,本文对最近的思考和实践进行了简单的总结。

    首先安卓中的定时操作

    安卓中定时功能使用AlarmManager实现,这个AlarmManager里持有一个wakelock对象,
    从名字就可以看出,wakelock是一个唤醒锁,安卓就是通过这个锁保证在闹钟唤醒时我们的操作做完,不至于立即又恢复到待机状态。
    wakelock也可以在代码中申请和使用。下图是使用耗电量检测工具GSam Monitor进行的监控结果截图。


    130746914019033750.%2F.png

    GSam Monitor对app使用的wakelock进行了统计,在进行耗电量测试时,我们可以通过这里
    分析后台的操作是否符合我们的预期,拿助手项目来说,在待机时使用wakelock的只有alarmmanager,从需求角度分析,我们每天有1个配置文件
    的请求和2类通知的请求是定时操作的,那么当我待机一天后,会看到wakelock详情中的alarmmanager数字增加了3,如果数字不是3,就可能是
    开发有些其他的实现或者bug,就需要进行跟进了。

    监听的各种广播(安卓的Broadcast Receiver机制)

    广播(Broadcast)既可能是系统发出的,也可能是app自定的,所以我们在测试耗电量时要遍历app注册所有广播
    网络条件影响

    有些app会有些预下载的操作,在闹钟触发了后进行预下载,与下载有关的操作当然与网络环境有关,这里需要考虑以下几种网络环境状态

    wifi且网络状态良好
    数据网络且网络状态良好
    弱网络情况,这种情况又分为信号较差导致的传输速率较慢的情况,手机在wifi和数据网络持续切换情况,网络的丢包率高导致不断地重试情况。
    弱网络的模拟可以作为单独一个点来调研

    **系统资源情况 **

    在待机时,不光被测app有活动,其他app也能会有活动,如果其他app活动时资源不足,系统很可能进行资源回收,被测app的服务很可能被杀掉或重启,这也是影响耗电量测试结果的一个重要因素。

    相关文章

      网友评论

        本文标题:android待机时耗电量影响因素总结

        本文链接:https://www.haomeiwen.com/subject/hcrwkttx.html