android 动态获取电量

论坛 期权论坛 脚本     
匿名技术用户   2020-12-29 08:38   11   0

android平台获取电量一般需要使用系统广播,如果每次回到主界面 ,我都希望取一次电量呢 ?


public void initBattery() {
    // 通过粘性广播读取电量
    IntentFilter intentFilter = new IntentFilter(Intent.ACTION_BATTERY_CHANGED);
    Intent intentBattery = registerReceiver(null, intentFilter);
    // 注意,粘性广播不需要广播接收器
    if (intentBattery != null) {
        // 获取当前电量
        int batteryLevel = intentBattery.getIntExtra("level", 0);
        // 电量的总刻度
        int batterySum = intentBattery.getIntExtra("scale", 100);
        int status = intentBattery.getIntExtra("status", BatteryManager.BATTERY_STATUS_DISCHARGING);
        float rotatio = 100 * (float) batteryLevel / (float) batterySum;
        MyLog.i("====", "batteryLevel===" + batteryLevel);
        MyLog.i("====", "batterySum===" + batterySum);
        MyLog.i("====", "currentBattery===" + rotatio + "%" + " / status" + status);
        if (status == BatteryManager.BATTERY_STATUS_CHARGING || status == BatteryManager.BATTERY_STATUS_FULL) {
            MainUtil.updateEleImage(iv_ele_charge, true);
        } else {
            MainUtil.updateEleImage(iv_ele_charge, false);
        }
        if (status == BatteryManager.BATTERY_STATUS_FULL) {
            rotatio = 100;
        }
        MainUtil.updateEle(iv_bettry, (int) rotatio);
    }
}


分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:7942463
帖子:1588486
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP