我的do循环代码是否正确?

时间:2014-12-02 02:52:58

标签: android for-loop usb countdowntimer batterymanager

这是对的吗? 我正在修改github的源代码:USB CHARGE COMMANDER 当电池电量从20%下降时,它将充电 当面糊达到80时,它不会 倒数计时器是每5分钟做一次的 我设置20000仅用于测试

    boolean startcountdown=true;
    do{
         new CountDownTimer(20000, 1000) {

        Intent intent  = _context.registerReceiver(null, new IntentFilter(Intent.ACTION_BATTERY_CHANGED));   
        int    level   = intent.getIntExtra(BatteryManager.EXTRA_LEVEL, 0);
        int    scale   = intent.getIntExtra(BatteryManager.EXTRA_SCALE, 100);
        int    percent = (level*100)/scale;

        public void onTick(long millisUntilFinished) {}

        public void onFinish() {
                if(percent <= 20){
                        _iIsCharging = 1;
                }
                else if (percent >=80){
                        _iIsCharging = 0;
                }
                else{
                        _iIsCharging = 1;
                }
            }
        }.start();
        }while(startcountdown);

1 个答案:

答案 0 :(得分:0)

这个do / while循环无法结束,此刻它是一个无限循环。布尔&#34; startcountdown&#34;需要一些方法才能最终达到FALSE的价值。例如

if (_iIsCharging == 0) {
    startcountdown = false;
}