现在的确也有三种方式
1.功耗仪(安捷伦)
精准度最高,但费用消耗庞大,并且使用不方便。无法做自动化
2.结合cpu等各种数据最终计算出电量消耗,单位是mA
精准度不如功耗仪,这个公式我这里就不能给出了
3.通过消息的方式获取。
精准度最低,单位是%。核心代码
new BroadcastReceiver() { @Override public void onReceive(Context context, Intent intent) { // TODO Auto-generated method stub int level = intent.getIntExtra(BatteryManager.EXTRA_LEVEL, -1); int scale = intent.getIntExtra(BatteryManager.EXTRA_SCALE, -1); int status = intent.getIntExtra("status", 0); // if (status == BatteryManager.BATTERY_STATUS_CHARGING) else } };
和启动性能一样,也有两种。活动状态和静默状态