android 电池电量检测,充电显示效果

这里是主要代码 资源我打包,自己下资源,放到这里写图片描述

  @Override
        protected void onResume() {
            super.onResume();
            register();
        }

        @Override
        protected void onPause() {
            super.onPause();
            unregister();
        }

        private void register() {
            registerReceiver(batteryChangedReceiver,  new IntentFilter(Intent.ACTION_BATTERY_CHANGED));
        }

        private void unregister() {
            unregisterReceiver(batteryChangedReceiver);
        }

        // 接受广播
        private BroadcastReceiver batteryChangedReceiver = new BroadcastReceiver() {
            public void onReceive(Context context, Intent intent) {
                if (Intent.ACTION_BATTERY_CHANGED.equals(intent.getAction())) {
                    int status = intent.getIntExtra("status", 0); 
                    int level = intent.getIntExtra("level", 0);
                    int scale = intent.getIntExtra("scale", 100);
                    int power = level * 100 / scale;
                    Log.d("Deom", "电池电量::" + power);
                     switch (status) {   
                       case BatteryManager.BATTERY_STATUS_UNKNOWN:   
                           break;   
                       case BatteryManager.BATTERY_STATUS_CHARGING:   
                           showMessage("充电");
                           mBatteryView.setImageResource(R.drawable.stat_sys_battery_charge);   
                           mBatteryView.getDrawable().setLevel(level);   
                           break;   
                       case BatteryManager.BATTERY_STATUS_DISCHARGING:   
                           showMessage(level+"");
                           mBatteryView.setImageResource(R.drawable.stat_sys_battery);   
                           mBatteryView.getDrawable().setLevel(level);   
                           break;   
                       case BatteryManager.BATTERY_STATUS_NOT_CHARGING:   
                           break;   
                       case BatteryManager.BATTERY_STATUS_FULL:   
                           break;   
                       }   

//                  mBatteryView.setPower(power);
                }
            }
        };

布局里面放一个

  <ImageView
            android:id="@+id/battery_view"
            android:layout_width="0px"
            android:layout_height="match_parent"
            android:layout_weight="1"
            android:layout_marginRight="100px" />

运行就ok了,图片资源 http://download.csdn.net/detail/u012922981/9673188

猜你喜欢

转载自blog.csdn.net/u012922981/article/details/53036074