Programming/Android

Android Battery Monitor

TanSanC 2013. 4. 29. 18:43

Android Battery Monitor Code


batteryUsePerSec 를 수정하여 사용하세요



	public TextView batteryUsePerSec; // 배터리 Text View

	public void onCreate(Bundle savedInstanceState) {
		......
		batteryUsePerSec = (TextView) findViewById(R.id.batteryUsePerSec);
		......
        }

	public void onResume() {
		......
		IntentFilter filter = new IntentFilter();
		filter.addAction(Intent.ACTION_BATTERY_CHANGED);
		registerReceiver(mBRBattery, filter);
		......
	}

	BroadcastReceiver mBRBattery = new BroadcastReceiver()
	{

		@Override
		public void onReceive(Context context, Intent intent) {
			// TODO Auto-generated method stub
			String action = intent.getAction();
			if (action.equals(Intent.ACTION_BATTERY_CHANGED))
			{
				onBatteryChanged(intent);
			}
		}

		private void onBatteryChanged(Intent intent) {
			// TODO Auto-generated method stub
			int scale, level, ratio;
			scale = intent.getIntExtra(BatteryManager.EXTRA_SCALE, 100);
			level = intent.getIntExtra(BatteryManager.EXTRA_LEVEL, 100);
			ratio = level * 100 / scale;
			
			batteryUsePerSec.setText(ratio + "");
			Log.d(ActivityTag, "onBatteryChanged()" + ratio);
		}
		
	};