首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Android耗电量线下监控: Battery Historian

发热案例分析 Android 框架层通过一个名为 batterystats 的系统服务,电池的信息,电压,温度,充电状态等等,都是由BatteryService来提供的。...实现了电量统计的功能,batterystats实现原理可以查阅电量统计服务 Android 提供的 dumpsys 命令用于查看系统服务的信息(实现原理可以查阅 dumpsys 介绍) 将batterystats...作为参数,就能输出完整的电量统计信息。...电池容量不会显示单一行为消耗的具体电量,这里只能显示使用电池的频率和时长,你可以看分时段的剩余电量来了解具体消耗了多少电量。...Android 的休眠唤醒主要基于 wake_lock 机制,只要系统中存在任一有效的 wake_lock,系统就不能进入深度休眠,但可以进行设备的浅度休眠操作。

1.6K30
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    【Android 电量优化】电量优化 ( 使用 AlarmManager 保持 CPU 唤醒 )

    电量优化】电量优化 ( 唤醒锁定 | 使用 WeakLock 保持服务唤醒 | 屏幕唤醒 ) 中 , 使用 WeakLock 保持 CPU 唤醒 , 全程 CPU 都处于工作状态 , 该操作耗电量非常大...; AlarmManager 可以一定程度上替代上述 WeakLock , 并且可以稳定每隔一段时间唤醒 CPU , 避免了 CPU 全程唤醒的情况 , 同时也降低了耗电量 ; 一、AlarmManager...; import android.app.PendingIntent; import android.app.Service; import android.content.BroadcastReceiver...; import android.content.Context; import android.content.Intent; import android.content.IntentFilter;...import android.os.IBinder; import android.os.SystemClock; import android.text.TextUtils; import android.util.Log

    1.1K00

    Android性能优化--电量功耗优化

    基础知识电能 = 电压 * 电流 * 时长模块电量(mAh) = 模块电流(mA) * 时长(h)系统电量优化红线规则华为电量优化红线规则电量分析Android 系统电量计算Android 系统的电量统计工作...其中四个比较关键的角色:功率:power_profile.xml,Android 系统使用此文件来描述设备各个硬件模块的额定功率,包括上面提到的多档位功率和 CPU 电量算需要到的各种参数值。...手机耗电排行监听电池状态获取充电状态、电池电量监控电池电量和充电状态IntentFilter intentFilter = new IntentFilter(Intent.ACTION_BATTERY_CHANGED...gcr.io/android-battery-historian/stable:3.0获取 bugreport# 重置电量信息adb shell dumpsys batterystats --reset...参考Android App 电量统计原理与优化-腾讯云开发者社区-腾讯云19 | 耗电优化(下):耗电的优化方法与线上监控-Android开发高手课-极客时间抖音功耗优化实践功耗优化 · 方案篇 · Android

    16610

    Android性能优化(九)之被忽视的电量

    2、 电量测试 Android4.1版本之后在系统增加了battery info模块,记录一定时间周期内整机及单个App的电量消耗。...3、 电量优化 Android系统上App的电量消耗主要由cpu、wakelock、数据传输(流量和wifi)、wifi运行、gps、other senior组成,而耗电异常也是由于这几个模块的使用不当...3.2.1 数据压缩 通过数据压缩等方式缩减传输时间,降低电量消耗,此章节可以参考《Android 性能优化(八)之网络优化》。...一直有一种传言:Android系统比较费电,然而真相不是这样,请不要把锅甩给Android系统: 原生的Android手机其实并不耗电,不安装App的Android手机放置一周仍然是电量充足,而且对功耗的控制在...参考: Android性能优化典范《Location & Battery Drain》 《移动App性能评测与优化》 《监控电池电量和充电状态》 《Batterystats and Battery Historian

    2.4K30

    Android IO监控 | 性能监控系列

    但是IO读写的操作非常零散,而且很多第三方框架内都会有写入操作,所以就变得非常难以监控和修改,有没有一种非常简单的方式可以帮助我们去定位这个问题呢?...而IO监控则是其中的开发测试阶段工具。...简单的介绍下动态Hook,我们可以通过Art虚拟机的机制,在一个方法调用的前后进行钩子操作,然后进行我们所需要的一些动态的监控的操作,已达到我们对于代码的动态监控能力。...IOCanary监控 监控IO是不是意味着只需要有方法能监控到文件的写入读取流就可以了呢?我们先简单的看下腾讯的Matrix的IOCanary是如何实现的。 ?...因为代码的调用顺序其实是会被收集在线程内部的,而这个构造则是在我们IO监控的Open方法内被执行的。

    2.7K22

    iOS 电量测试实践

    一、电量测试之农业时代 在之前很长一段时间,我们都是用这种可怜的方式进行电量测试的: 1、选定测试场景以及时长; 2、给手机充放电,让手机剩余电量在我们预设的值,比如90%,每个场景测试开始时,保证手机都是这一电量...,两个电量差,就为该场景在一定时长内的耗电量;剩余电量嘛,直接读手机上展示的值或是通过接口获取(后面会介绍)均可以,几乎没有区别; 真是够简陋,但并非完全没有用,明显的电量消耗问题,还是可以发现,只要选得场景对了就可以...四、剩余电量是怎么计算的 iOS系统每20秒会读取一次系统电量相关数据记录入整机电量数据库,主要内容有当前电流,电压,剩余电量,最大电量,温度,是否在充电,充放电次数。...3、剩余电量是以mAh计,他和最大电量是相对值,我们看到的电量百分比是这两个值的比值。电量最大值是一个理论值,1000mAh的意义是,以1000mA的恒定电流放电时,能放1小时。...4、系统电量的消耗分为主要以下大类,每一种都作为电量消耗的根结点。

    12.4K71

    腾讯视频国际版(Android)电量测试方法研究与总结

    图1-2 某APP指标异常示例图 2、核心指标详细信息: 要对APP的指标进行监控,首先要明确该指标在Android vitals中是如何进行统计的,这一节主要介绍电量相关核心指标的基本概念和计算方式。...如果wake alarms频繁触发,会耗尽设备电量。Android vitals中展示了app的过渡唤醒次数。...A.Batterystats/ bugreport Android5.0后,电量数据可通过dumpsys batterystats获取。Android系统统计耗电量的基本公式是W=U*I*t。...Android系统以uid为单位,依次统计每个apk的使用cpu使用耗电量、wake lock耗电量、移动数据耗电量、wifi数据耗电量、wifi维持耗电量、wifi扫描耗电量、各传感器耗电量。...C.QAPM QAPM是SNG开发的致力于解放专项测试人员的工具平台,该平台带有电量监控功能,在电量个例菜单中会统计前台30分钟、后台5分钟两个场景下的wacklock持有信息。

    3.3K31

    【Android 电量优化】JobScheduler 相关源码分析 ( JobSchedulerService 源码分析 | Android 源码在线网址推荐 )

    JobInfo job, int uId) 方法 三、scheduleAsPackage 方法 四、startTrackingJob 方法 五、JobSchedulerService 源码注释 上一篇博客 【Android...电量优化】电量优化 ( JobScheduler | JobService | AsyncTask ) 中使用了 JobScheduler 进行电量优化 , 将消耗电量的操作 , 都在设定的条件下集中执行...构造函数中初始化并放入 mControllers 集合中 ; 五、JobSchedulerService 源码注释 ---- public class JobSchedulerService extends com.android.server.SystemService...mControllers.add(TimeController.get(this)); mControllers.add(IdleController.get(this)); // 电量控制器...; } } } } } 该代码路径为 /frameworks/base/services/core/java/com/android

    42900

    Android 发热监控实践

    本文通过得物 Android 端侧现有的一些监控实践,不深入功耗计算场景无法自拔,优先聚焦于发热场景本身,希望能给大家一些参考。...熟悉 Android 开发的同学知道 Android 的 Zygote 进程是 Android 系统启动时的第一个进程。...、分析、解决的流程化监控推进的能力。...五、收益 Android 端侧发热监控自上线以来,背靠平台侧的支撑,陆续发现了一些问题并联合开发同学做了对应场景的治理优化工作,如: 耗时独立线程任务 接入统一线程池调度管理; 动画执行死循环监测修复;...对于端侧的排查上来说,当前优先级聚焦于应用层的不合理使用上,对于排查工具链路增强、问题业务归因、低电量、低功耗模式下的动态策略降低、自动化诊断报告等环节仍旧有很多值得深入挖掘的点,例如: 监控/工具增强

    73720

    个人资料、消息、书签和偏好设置 Android耗电量测试

    Android电量测试1、使用硬件测试仪如安捷伦N6705B,这种的硬件功耗测试仪可以比较精确的测试手机的电量消耗。...使用方法:这个方法需要拆卸手机,将手机电池拿掉,将电量表串接在手机和外部电源之间,这样手机的供电就会经过电量表,可以获取比较准确的电量数据。...2、基于Battery Historian查看电量消耗Battery-Historian是谷歌推出的一款专门分析Bugreport的工具,是谷歌2015年I/O大会上推出的一款检测运行在android5.0...优点:结果直观,有详细的耗电数据缺点:不支持5.0以下的android系统耗电模块总结:获取数据注意事项:获取测试结果时我们也要注意数据的有效性,避免数据误差,让数据更有效的说明问题,下面提供两种方法,...最后将两次的耗电进行对比,得出软件消耗的电量大小;二、纵向对比法:同时进行两台手机,其中一台手机不运行软件,另一台手机运行软件;分别获得两台手机的耗电量,对比两台手机耗电量差异,得出软件消耗的电量大小。

    55410

    2019-11-20-app专项测试【Android电量】Battery Historian耗电分析

    设备环境:macos 测试对象:Android-app 使用 Homebrew 安装docker brew cask install docker 在终端搜索Battery Historian相关的镜像...docker run --name=battery -d -p 9999:9999 bhaavan/battery-historian docker run -p 9999:9999 gcr.io/android-battery-historian...,同样执行对应的一条就行) docker run -d -p 9999:9999 bhaavan/battery-historian docker run -p 9999:9999 gcr.io/android-battery-historian...连接手机,打开调试模式 Android 7.0和更高版本的开发设备获取错误报告: adb bugreport bugreport.zip 对于6.0或更低版本的设备: adb bugreport > bugreport.txt...默认情况下,统计信息是在运行基础上维护的,Android也不记录特定于应用程序的用户空间wakelock转换的时间戳。

    1.5K20
    领券